将图像添加到MovieClip AS3

时间:2010-08-02 10:14:46

标签: flash actionscript-3

我创建了i类宽度,我继承了许多子类。现在我要为子类添加不同的图像。由于我是Flash和AS3的新手,我有一些问题需要完成。

Blend.as

package com.jarsater.sthlmroast
{
    import flash.display.MovieClip;

    public class Blend extends MovieClip
    {  
        private var _width:int = 54;
        private var _height:int = 188;  

    public function Blend():void
    {
        this.width = this._width;
        this.height = this._height;
    }
}

Dark.as

package
{
    import com.jarsater.sthlmroast.Blend

    public class Dark extends Blend
    {
         public function Dark()
         {
             super();
             this.setBlend('Dark');
         }
    }
}

如何将图像添加到Dark.as对象,然后将对象放在舞台上?

2 个答案:

答案 0 :(得分:5)

如何加载图片:

var request:URLRequest = new URLRequest('path_to_image.png');
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoadComplete);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onImageLoadError);
loader.load(request);


function onImageLoadComplete(e:Event):void
{
    trace('onImageLoadComplete()');
    var loaderInfo:LoaderInfo = LoaderInfo(e.target);
    loaderInfo.removeEventListener(Event.COMPLETE, onImageLoadComplete);
    loaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, onImageLoadError);

    var bitmap:Bitmap = Bitmap(loaderInfo.content);
    addChild(bitmap)
}

function onImageLoadError(e:IOErrorEvent):void
{
    trace('onImageLoadError(): ' + e.text);
    var loaderInfo:LoaderInfo = LoaderInfo(e.target);
    loaderInfo.removeEventListener(Event.COMPLETE, onImageLoadComplete);
    loaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, onImageLoadError);
}

在此示例中,我将位图添加到显示列表中,但您可以根据需要轻松添加Loader对象。

答案 1 :(得分:1)

您可以通过XML加载Dark类中的图像。加载图像数据后,可以将其添加到MovieClip并将其添加到舞台中。网上有很多教程可以帮助你从XML加载(这是非常直接的),但是我找到了一个应该有帮助的教程:

http://www.republicofcode.com/tutorials/flash/as3xml/

祝你好运!

得不