2011-06-06 144 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