台灣最大程式設計社群網站
線上人數
1607
 
會員總數:246276
討論主題:189810
歡迎您免費加入會員
討論區列表 >> CSS/HTML5/Bootstarp >> 如何讓歌曲重複PLAY ~~
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
如何讓歌曲重複PLAY ~~
價值 : 15 QP  點閱數:2339 回應數:16
樓主

遠仔
門外漢
0 82
1372 260
發送站內信

請問我要如何可以讓歌曲可以重複PLAY 呢?

還有我再按下PLAY時,如果按2次以上會變二重奏哩.., 我哪裡寫錯了呢@@?

還有如何當play按下時,三角形圖示會變換成暫停圖示呢?再按一次變PLAY圖示?
麻煩各位大大了^^"

本篇文章發表於2012-02-04 16:34
1樓
回應

han
檢舉此回應
有code嗎??
本篇文章回覆於2012-02-06 13:55
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
回應

han
檢舉此回應
第一段沒code不太知道
----------------------------------------------------------------------------
還有如何當play按下時,三角形圖示會變換成暫停圖示呢?再按一次變PLAY圖示?
麻煩各位大大了^^"

第二段很簡單 用visible 就可以了 三角形圖示跟暫停隱藏顯示
在三角形的code裡面寫滑鼠事件 之後三角形.visible=false 暫停.visible=true
反之
在暫停的code裡面寫滑鼠事件 之後三角形.visible=true 暫停.visible=false


本篇文章回覆於2012-02-06 14:02
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

han
檢舉此回應
第一段沒code不太知道
----------------------------------------------------------------------------
還有如何當play按下時,三角形圖示會變換成暫停圖示呢?再按一次變PLAY圖示?
麻煩各位大大了^^"

第二段很簡單 用visible 就可以了 三角形圖示跟暫停隱藏顯示
在三角形的code裡面寫滑鼠事件 之後三角形.visible=false 暫停.visible=true
反之
在暫停的code裡面寫滑鼠事件 之後三角形.visible=true 暫停.visible=false


本篇文章回覆於2012-02-06 14:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
回應

han
檢舉此回應
我大概知道了 因為你目前只能按開始的三角形圖示 所以案兩次當然會撥兩次 因為執行了兩個播的動作
所以你 要在三角型圖示裡面寫的code為
music.play();//播放music
三角型圖示.visible=false
暫停圖示.visible=true

這樣就會撥一次 然後隱藏三角形 顯示暫停

暫停圖示的code為
music.close()
三角型圖示.visible=true
暫停圖示.visible=false


另外你要讓他自動撥放99次的話
code為
music.play(0,99)
本篇文章回覆於2012-02-06 15:08
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
作者回應

遠仔
檢舉此回應
CODE在這,對了,我加入mySound=myMusic.play(0,99);後,還是沒重複撥放哩~~
其它我再找時間試,如果有需要原始檔,我再PO上來,謝謝大大^^


本篇文章回覆於2012-02-06 22:59
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
作者回應

遠仔
檢舉此回應
喔,對了,那我是在PLAY的BTN上做二個圖案,三角型和暫停嗎?把它們命名後去影格1裡寫CODE,沒錯吧
不好意思,剛學有些觀念還不是很清楚^^||
本篇文章回覆於2012-02-06 23:14
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
回應

han
檢舉此回應
可以的話富一下原始檔 我在幫你看
本篇文章回覆於2012-02-07 13:31
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
8樓
回應

han
檢舉此回應
怪了 我看你的code 連載入聲音物件都沒有
我這有個簡單載入的code 可以試試看 P1060365-6.mp3音樂檔請放在同一個目錄
var mysound:Sound=new Sound()
mysound.addEventListener(Event.COMPLETE,loader_complete);
mysound.load(new URLRequest("P1060365-6.mp3"));

function loader_complete (e:Event){
mysound.play(0,99);
}

可以先拿去測試看看 可以的話再加入三角形跟暫停的圖示 然後命名 playmusic 跟 closemusic

再來加入監聽事件 (這應該不用再寫了)

直接寫function

function 按下play圖示時 也就是按下play之後的動作
{
playmusic.visible=false
mychannel=mysound.close()
}

function 按下closemusic圖示時 也就是按下closemusic之後的動作
{
closemusic.visible=false
mysound.play(0,99);
}

本篇文章回覆於2012-02-07 14:51
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
9樓
回應

han
檢舉此回應
更正一下

function 按下play圖示時 也就是按下play之後的動作
{
playmusic.visible=false
mychannel=mysound.close()
}

function 按下closemusic圖示時 也就是按下closemusic之後的動作
{
closemusic.visible=false
mysound.play(0,99)
}

改成

function 按下play圖示時 也就是按下play之後的動作
{
playmusic.visible=false
closemusic.visible=true
mychannel=mysound.play(0,99)
}

function 按下closemusic圖示時 也就是按下closemusic之後的動作
{
closemusic.visible=false
playmusic.visible=true
mysound.close()
}
本篇文章回覆於2012-02-07 14:57
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
10樓
作者回應

遠仔
檢舉此回應
連結先給你^^
http://www.mediafire.com/?on7jpwqaxtg8ea6
本篇文章回覆於2012-02-07 23:14
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
11樓
最有價值解答

han
檢舉此回應
你的第八行 mySound=myMusic.play(0,99); 把這段砍掉


後面的mystop function改成這樣
btn_stop.addEventListener(MouseEvent.CLICK,myStop);
function myStop(MouseEvent)
{
mySound.stop();
btn_play.visible=true
btn_stop.visible=false
this.removeEventListener(Event.ENTER_FRAME,iWatch);
tCon.value=0;
}




後面的myPlay function改成這樣
btn_play.addEventListener(MouseEvent.CLICK,myPlay);
function myPlay(MouseEvent)
{

mySound=myMusic.play(0,99);
btn_play.visible=false
btn_stop.visible=true
this.addEventListener(Event.ENTER_FRAME,iWatch)
}

至於重撥的問題 其實他有重撥 只要你不拉時間軸
等他播完了他就會再撥一次
本篇文章回覆於2012-02-08 13:47
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
12樓
作者回應

遠仔
檢舉此回應
喔喔~~有了@@
想再請問...那有辦法讓它在有拉時間軸的情況下...
還是能自動重撥嗎? 0.0

還有就是我想讓它在歌曲撥放完時,
時間軸要回原點再繼續由左到右跑,要怎麼做呢@@?
我加了這段CODE,但沒有哩>"<

大大拜託了~~
本篇文章回覆於2012-02-10 16:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
13樓
回應

han
檢舉此回應
第39行開始
38 function iWatch(Event)
39 {
40 tCon.value=mySound.position;
41 }


iWatch的function改成下列這樣就可以了

function iWatch(Event)
{
tCon.value=mySound.position;
trace(tCon.value)


if(tCon.value>131900)
{
mySound.stop();
mySound=myMusic.play(0,99);
btn_play.visible=false
btn_stop.visible=true

}

}
本篇文章回覆於2012-02-13 14:19
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
14樓
回應

han
檢舉此回應
因為平常比較忙 所以沒常看板 有看到才會回
遠仔是上班族還是學生?
本篇文章回覆於2012-02-13 14:37
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
15樓
回應

han
檢舉此回應
131900 改 131000好了 比較不會有誤差
本篇文章回覆於2012-02-14 10:02
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   

回覆
如要回應,請先登入.