看板 Flash 關於我們 聯絡資訊
※ 引述《justaID (快樂崇拜)》之銘言: : 請問該如何才能從屬性指向其類別的實體? 硬要給你的問題一個解答,就是另外寫一個MyTimer類別 然後讓他有個parent屬性 然後在Apple裡面給growTimer一個setter, 指定自己為它的parent... 事實上就你目前的寫法,不容易達成你的需求,不建議這樣寫 既然你的Apple裡面已經有自己的Timer 那startGrow跟stopGrow也可以寫在Apple裡面 我貼完整一點XD package { import flash.display.MovieClip; import flash.events.TimerEvent; import flash.utils.Timer; public class Apple extends MovieClip { public var growTimer:Timer; public var canEat:Boolean; public function Apple() { canEat = false; } public function startGrow(growTime:Number){ growTimer=new Timer(growTime,1); growTimer.addEventListener(TimerEvent.TIMER_COMPLETE, stopGrow) growTimer.start(); } public function stopGrow(e:*=null){ growTimer.stop(); canEat=true; //dispatchEvent(new Event('eatme')); } } } 這樣的話Main只需要 var apple1=new Apple(); apple1.startGrow(1000); 其實版上的發問常出現這種情形 就好像走迷宮時遇到死巷 結果開始思考該如何打掉面前的牆壁一樣 XD -- 請千萬不要覺得我是在嘲笑 我絕對沒有那個意思 只是每次看到這種情形都覺得蠻趣味的而已 -- 'Cause you are beautiful your scars are beautiful like the jade -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.224.40.207 ※ 編輯: scars 來自: 61.224.40.207 (11/22 05:46)
justaID:感謝大大的建議! 事實上原本我是採寫在class裡的寫法 11/22 05:43
justaID:但會出現 error #1006: startGrow(或stopGrow)不是函數 11/22 05:45
justaID:的除錯訊息,最近剛學習.fla和.as分開的寫法,還不熟稔 11/22 05:46
justaID:google很久找不出解決方法,時間又緊迫,只好轉彎寫~"~ 11/22 05:47
justaID:二來也是好奇有沒有辦法從屬性指到類別實體 11/22 05:48
scars:不是函數這error還蠻奇怪的 你確定放的位置是在class裡嗎? 11/22 05:48
也有可能你沒把function宣告為public ※ 編輯: scars 來自: 61.224.40.207 (11/22 05:53)
justaID:應該沒錯吧@"@(如果錯在這,真該撞豆腐了) 11/22 05:54
justaID:package { 11/22 05:54
justaID: import flash.utils.Timer; 11/22 05:54
justaID: public class Apple extends MovieClip{ 11/22 05:54
justaID: var growTimer:Timer; var canEat:Boolean; } 11/22 05:55
justaID:(上一行最後的}是手誤) 11/22 05:56
justaID: public function startGrow() {...} 11/22 05:57
justaID: public function stopGrow(evt:TimerEvent):void {...} 11/22 05:57
justaID: } 11/22 05:57
justaID:} 11/22 05:58
justaID:以上,難道真錯在語法結構?@"@(猛汗) 11/22 05:58