看板 Flash 關於我們 聯絡資訊
問題簡化(不是重點的地方全部省略) var test=1; var mclListener:Object = new Object(); mclListener.onLoadInit = function(target_mc:MovieClip) { trace("囧"); trace(test); trace(自訂函數); trace(_parent); } public 自訂函數() { } 實際上那個自訂函數當然是英文的 trace的結果如下: 囧 undefined undefined undefined 證明在自訂類別中讀不到類別的變數,也讀不到類別的函數 最後問題是這樣解決的: mclListener.自訂函數 = 自訂函數; 難道真的沒辦法讀嗎?我不相信FLASH的功能這麼弱,也許是我對路徑的觀念不熟, 所以有此一問 0.0 -- 這個問題真的困擾很大 就連mclListener.自訂函數 = 自訂函數; 都會影響自訂函數中的 this 位置,整個就困擾... -- http://etrex.blogspot.com/ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.228.72.83 ※ 編輯: etrexetrex 來自: 125.228.72.83 (04/12 22:39)
etrexetrex:只好放棄使用自訂類別 (哭) 04/12 23:18
cort38:你要不要把你完整class貼出來,還有你使用class的程式碼貼出 04/12 23:56
etrexetrex:我的class太長了 快要100行 而且很亂 04/13 00:06
etrexetrex:我想貼出來只會更亂 而且上面的trace("囧");確實顯示 04/13 00:07
etrexetrex:表示問題不是出在其他地方 0.0 04/13 00:07
etrexetrex:所以我想只要試我在上面寫的那個架構就可以了 04/13 00:08
etrexetrex:問題解決了,出去Listener要藉著target_mc._parent 04/13 22:24
etrexetrex:才能出去,所以自訂函數在target_mc._parent.自訂函數 04/13 22:25
etrexetrex:不能用this出去 04/13 22:25