2011-06-06 70 views
0

作为标题状态之前,添加孩子到动态添加的swf,我试图添加孩子到动态添加的swf文件,使用AS3,然后将其添加到舞台上,这可能吗?在添加到舞台

下面是代码我迄今,

AS3:

var mLoader:Loader = new Loader(); 
var mRequest:URLRequest = new URLRequest(glo.bal.base_url+"videos/vid_1.swf"); 
mLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleteHandler_one); 
mLoader.load(mRequest); 

function onCompleteHandler_one(loadEvent:Event) 
{ 
    //Here I would like to add a child to the swf file before I append it to stage 
    video_container.addChild(loadEvent.currentTarget.content); 
} 

里面的vid_1 SWF有一个名为box_one一个影片剪辑,我想一个图像追加到box_one,只有将图像文件添加到box_one之后,将swf添加到舞台。

任何帮助将不胜感激球员,thanx提前!

回答

1
var mLoader:Loader = new Loader(); 
var mRequest:URLRequest = new URLRequest(glo.bal.base_url+"videos/vid_1.swf"); 
mLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleteHandler_one); 
mLoader.load(mRequest); 

function onCompleteHandler_one(loadEvent:Event) 
{ 
    var loadedClip:MovieClip = loadEvent.currentTarget.content as MovieClip; 
    loadedClip.addChild(some_other_clip); 
    loadedClip.someExistingChild.addChild(some_other_clip_2); // Only do this obviously if you're sure of the specifically named child of your load clip existing and in the right scope 

    //This is specifically how you'd do this in your code 
    loadedClip.box_one.addChild(somethingElse); 
    stage.addChild(loadedClip); 
} 

为安全起见,你可能会想换,在一些错误校验码:

if(loadedClip && loadedClip.box_one){ 
    loadedClip.box_one.addChild(somethingElse); 
} 

所以,是的这是可能的。

+0

它应该是'loadedClip ['box_one']'除非mc是动态类。 只有当'vid_1.swf' fla文件没有扩展一些自定义类时它才能工作。 – 2011-06-06 10:50:21

+0

非常感谢,现在就试试吧!将回发几个... – Odyss3us 2011-06-06 10:52:41

+0

当我运行它时,我得到这个错误...'TypeError:错误#1009:无法访问空对象引用的属性或方法.',任何想法? – Odyss3us 2011-06-06 11:11:20