Re: [問題] as3 不同階層函式呼叫問題

看板Flash作者 (CJ Cat)時間16年前 (2009/07/09 09:58), 編輯推噓2(205)
留言7則, 2人參與, 最新討論串2/2 (看更多)
你是想要解決這個特例 stage.addChild()的物件要呼叫root的函式 還是想要解決這個更一般化的問題? a.addChild()的物件要呼叫同屬a的child的物件b身上的函式 如果是前者,直接呼叫root.myFunction()就好 如果是後者,有幾種做法 (1)先前有設定b.name = "abc" DisplayObjectContainer(parent).getChildByBame("abc").myFunction() (2)知道b在a的深度為n DisplayObjectContainer(parent).getChildAt(n).myFunction() 還有很多很迂迴的做法,不過不符合直覺,所以就不在此敘述 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.124.85.205

07/09 16:17, , 1F
我是問第一個問題 好像不能直接呼叫root.myFunction()
07/09 16:17, 1F

07/09 16:18, , 2F
我用(stage.getChildAt(0) as MovieClip).myFunction
07/09 16:18, 2F

07/09 16:19, , 3F
這樣就成功了 還是謝謝你:)
07/09 16:19, 3F

07/09 16:35, , 4F
對,要先轉成Sprite或MovieClip,因為root的類型是
07/09 16:35, 4F

07/09 16:35, , 5F
DisplayObject,DislayObject不是dynamic class
07/09 16:35, 5F

07/09 16:40, , 6F
偷懶被發現抓包了 :p
07/09 16:40, 6F

07/09 16:47, , 7F
哈哈 階層概念多虧你的講解 有比較清楚點了 感謝你
07/09 16:47, 7F
文章代碼(AID): #1ALKx54D (Flash)
文章代碼(AID): #1ALKx54D (Flash)