作者Angelliya (澪澪...誰還有心?)
看板Flash
標題Re: [問題] 存取未定義屬性 SOUND_COMPLETE 的問題
時間Tue Mar 2 20:22:26 2010
※ 引述《godsing (執著是苦)》之銘言:
: http://www.megaupload.com/?d=K8WXREIM
: 先附上原始檔
: 小弟是照著書本上的AS3.0範例試作
: 裡面是一個mp3的播放器
: 在play鈕的最後附上m_channel的事件偵聽(Event.SOUND_COMPLETE ,回到曲目0秒處函數)
: 可是卻出現
: 1119: 存取可能未定義的屬性 SOUND_COMPLETE (透過靜態類型flash.events:MouseEvent
: 的參考)。
: 我不懂Event.SOUND_COMPLETE已經是藍字了,應該不會打錯
: Event.SOUND_COMPLETE是SoundChannel的偵聽,我也沒搞錯
: 如果扣掉這段重播的事件就沒有問題,但是問題還是存在 = =
: 懇請指點!
39 function play_Released(Event:MouseEvent):void{
^^^^^
40 //從目前音效開始播放,並可播放一次
41 m_channel = music1.play(m_position ,1);
42 play_status=true;
43 play_btn.enabled=false;
44 pause_btn.enabled=true;
45 //以下是有問題的偵聽
46 m_channel.addEventListener(Event.SOUND_COMPLETE,soundComplete ~//
47 }
錯在他是藍字...
這樣說可能會造成誤會...
稍微說一下好了
書上可能是這樣寫的
event:MouseEvent
會過
但打成
Event:MouseEvent就會錯
雖然都是藍字...
但變數應該不能是藍字
通常會寫e:MouseEvent
或者是evt:MouseEvent 之類
而不會用系統保留字當做變數名稱
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.220.144.46
※ 編輯: Angelliya 來自: 61.220.144.46 (03/02 20:23)
※ 編輯: Angelliya 來自: 61.220.144.46 (03/02 20:34)
推 rockfuture:說得沒錯~要盡量避免使用系統保留字當變數名稱 03/02 21:53
→ rockfuture:我想原PO出錯的地方在於:將Event宣告為Parameter 03/02 21:55
→ rockfuture:在註冊Listener時用宣告為MouseEvent型態的"Event"變數 03/02 21:59
→ rockfuture:存取靜態屬性"SOUND_COMPLETE",才會發生上述錯誤 03/02 22:00
推 godsing:感謝 03/04 16:15