Re: [問題] enterFrame要如何離開?
※ 引述《jing007 (嗚~合購版讓我變肥肥肥豬)》之銘言:
: 做mp3的時間拉軸還在測試階段
: 我利用enterFrame寫在時間拉軸(是影片片段)上去抓mp3的時間 並且測試
: 但一開始的DT及PT值就一直跑 全是undefined(還沒按play)
: 但沒有辦法讓他不要run啊 一直讀我怕遲早會當掉
: 按下play後,才開始抓DT及PT的值 我為了避免唱完後 還一直run
: 所以想給個判斷式DT=PT時就離開 但一直有問題
: 唱完後還一直跑下去…也是一直出來undefined
: 我不想讓他一直run的話我該如何改?謝謝~
: onClipEvent(enterFrame)
: {
: DT = _root.music_sound.duration;
: PT = _root.music_sound.position;
: trace("DT");
: trace(DT);
: trace("PT");
: trace(PT);
: if(DT == PT)
: {
: this.stop();
: }
: }
: 補充:我的作法是在時間拉軸(影片影段)上抓場景所播放音樂的時間
: 因音樂會一直跑 所以才使用enterFrame去偵測所抓到正播放的時間
: 但是enterFrame此事件是一直不斷地去偵測 只要此元件存在動畫中 就會一直偵測
: (以上是小正正的書這樣解說的)
: 但時間拉軸又不可能不見 而且我又要靠拉軸所拉的軸心來偵測
: 偵測現在軸心位置所應播放的音樂位置 再放出音樂 (這邊還沒做...)
: 所以有沒有方式能讓enterFrame停止偵測的?謝謝~
看到您這兒用enterFrame不斷的在檢查音樂是否播完
會建議你使用Sound類別來做
它在播完的時候,會拋出一個事件(onSoundComplete)
以下節錄F1的說明範例:
var my_sound:Sound = new Sound();
my_sound.attachSound("mySoundID");
my_sound.onSoundComplete = function() {
trace("mySoundID completed"); //在這裡可以做你想做的事 :)
};
my_sound.start();
如果你擔心enterFrame太佔資源的話
也許可以考慮上面這個方法 :)
供你參考
--
Sound類別的使用方法,可以再翻閱F1說明
--
http://www.eddie.com.tw/blog/
http://www.eddie.com.tw/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.133.136.105
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 4 篇):
Flash 近期熱門文章
PTT數位生活區 即時熱門文章