看板 Flash 關於我們 聯絡資訊
※ 引述《s24601 (24601)》之銘言: : 比如說按第一次是讓影片元件A播放 : tellTarget ("A") { : play(); : } : 按了第二次變成讓B播放 : tellTarget ("B") { : play(); : 但不知道在動作那邊要點什麼才有辦法這樣 : 請問有人知道嗎 哦哦,應該是我之前回覆有誤,讓原 po 誤會了 應該是要說 this["元件名"+變數].play(); 才對 以下單就 2 個影片片段的情形來講 因為後來也不鼓勵把程式寫在元件上面 所以我這邊就改成寫在時間軸上的寫法,不過其實沒什麼差 假設控制播放的按鈕你取叫「play_btn」 一、if 判斷法 var boo:Boolean = false;//布林函數,只有 false or true play_btn.onRelease = function(){ if(boo == false){//如果是 false 就播 A1 A1.play(); boo = true; //然後把它設成 true,這樣下次就會去播 A2 }else{ A2.play(); boo = false; } } 如果另一個要播放另一個要停止的時候就給它加個 stop(); 二、另一位大大說的取餘數方法,這邊我直接用很多個不同影片片段要播放舉例 假設有 20 個影片片段要輪流按了會播放,1個播放其他都會停 影片片段名稱命名為 A1、A2.....A19、A20 var mcTotal:Number = 20;//將有幾個影片片段獨立出來,方便修改 var nowPlay:Number = 0;//這是決定要讓哪一個影片片段來跑 play_btn.onRelease = function(){ nowPlay = nowPlay % mcTotal + 1; //因為設名字是 1 開始,而 nowPlay 初始值為 0,故取餘數後再 +1決定控制的影片 //+1 是避免當nowPlay = 20,20 % 20 為0,會找不到要 play 的影片 for(var i:Number=1; i<=mcTotal; i++){ if(nowPlay == i){//如果 nowPlay = i 就播放,其他則停止 this["A"+i].play(); }else{ this["A"+i].stop(); } } } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.136.191.178
diabloevagto:其實我也不知道取餘數可不可以說...只是剛好看到樓上 07/19 22:54
diabloevagto:的說可以加數字... 07/19 22:54
s24601:太酷了我來研究一番!!!!!感謝高手!!!!! 07/20 01:28