2010-10-14 49 views
0

我有一个barCode类,用于生成barCode的图像。我创建这个类的一个实例,它按预期工作,例如:FLEX - 加载类实例类型的图像

var myBarCodeInstance:barCode = new barCode(); 

var myBarCodeImg:Image = new Image(); 
myBarCodeImg.source = myBarCodeInstance; 

使用此代码的形象出现,并能正常工作。不过,我的问题是,如何在该图像上实现一个加载器,以便在图像完全加载并准备好处理时触发事件? (我试图访问它的内容之前,没有完全加载图像,我遇到了空问题)。

喜欢的东西下面:

var loader:Loader; 

loader = new Loader(); 

loader.contentLoaderInfo.addEventListener(Event.COMPLETE,function(e:Ev ent):void{ 
myBarCodeImg.source = e.currentTarget.content; 
// further processing here 
}); 

loader.load(new URLRequest(encodeURI(“image.jpg“))); 

,但我不知道该怎么到位“image.jpg的”部分的插入,由于我的形象是一个类的实例,而不是实际的JPG文件。

+0

你得到一个错误,如果您尝试访问'VAR BMP:位图= tempImg.content为位图; trace(bmp);'立即在'addElement(tempImg);'之后' – Amarghosh 2010-10-14 12:25:37

+0

嗨,不,它不给它错误跟踪... test4_0.WindowedApplicationSkin2.Group3.contentGroup.Image12.test4_logoImg13 – scott 2010-10-15 08:21:22

回答

0

Image调度complete事件 - 尝试监听该事件:

var myBarCodeInstance:BarCode = new BarCode(); 
var myBarCodeImg:Image = new Image(); 
myBarCodeImg.addEventListener(Event.COMPLETE, completeHandler); 
myBarCodeImg.source = myBarCodeInstance; 

function completeHandler(e:Event):void 
{ 
    var img:Image = e.currentTarget as Image; 
    var barcode:BarCode = img.content as BarCode; 
    /* process it */ 
} 
+0

我试过类似的东西看到我刚刚发布的新代码,你能告诉我什么是worng和如何修复它?感谢您的帮助,欢呼声。 – scott 2010-10-14 12:13:40