加载外部图片无法显示
package { import flash.display.Sprite; import flash.display.Loader; import flash.net.URLRequest; import flash.events.Event; public class Add_Pic extends Sprite { public var urlRequest:URLRequest = new URLRequest(); public var loader:Loader = new Loader(); public function Add_Pic(_url:String,_x:Number,_y:Number,_width:Number,_height:Number) { urlRequest.url = _url; loader.load(urlRequest); addChild(loader); loader.x = _x; loader.y = _y; loader.width = _width; loader.height = _height; } }}
这是加载外部图片的类
import _class.Add_Pic;
var net:Add_Pic = new Add_Pic("image/net.png",0,0,550,400);
addChild(net);
这是flash文档里的实现部分,但是就是无法显示图片
原因是:
在Loader 未加载成功时设置了尺寸
Loader本身是空的,急着设置尺寸会让 scaleX scaleY 为0
所以眼睛就看不到了
把 loader.width = _width;
loader.height = _height;
放到加载完成时设置
package { import flash.display.Loader; import flash.net.URLRequest; import flash.events.Event; public class Add_Pic extends Loader { private var w:int; private var h:int; public function Add_Pic(_url:String,_width:int,_height:int) { w=_width; h=_height; contentLoaderInfo.addEventListener(Event.COMPLETE,onLoadComplete); load(new URLRequest(_url)); } private function onLoadComplete(e:Event):void{ width=w; height=h; contentLoaderInfo.removeEventListener(Event.COMPLETE,onLoadComplete); } }}