看板 Flash 關於我們 聯絡資訊
我想複製80個按鈕當作Bingo的選號按鈕,以下是語法 (版本 Flash CS3 AS2.0) for (i=1; i<=80; i++) { duplicateMovieClip(N_mc, "N"+i, i); //N_mc為按鈕影片 h = (i-1)%10; v = (i-1-h)/10; this["N"+i]._x = 35*h+25; this["N"+i]._y = 35*v+30; this["N"+i].T_txt.text = i; this["N"+i].A_btn.alpha = i; //alpha只是用來記錄i值 this["N"+i].A_btn.onRelease = function() { var k = this.alpha; //見底下問題二 Num(k); //跑另一個Function紀錄選了哪些號碼 }; } N_mc的設置是這樣的 N_mc底下 ↙ ↘ A_btn T_txt 用來被按的 用來顯示按鈕號碼 問題一:這樣是不是複製太多物件了,等於複製240個物件? A_btn的alpha值不影響顯示(按鈕被遮住看不到),只是用來記錄編號, 因為紅色那行沒有辦法寫成 var k = this["N"+i].T_txt.text ? 問題二:有沒有辦法直接取得T_txt的內容 最後想再請教大家 A_btn.alpha 和 A_btn._alpha 意義上有什麼不同? 謝謝 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 1.170.136.117
aquarianboy:alpha 跟 _alpha 的差別,前面的是AS3、後面的是AS2 02/09 16:01
A_btn的alpha=整數i k=A_btn.alpha ,k會是整數 k=A_btn._alpha ,k會是4.8916486 (i=5) ※ 編輯: driftseed 來自: 1.170.136.117 (02/09 16:06)
aquarianboy:為什我記的剛好跟你相反,在AS3的alpha值是0~1之間 02/09 18:47
aquarianboy:AS2的_alpha才是0~100 02/09 18:48
aquarianboy:BTW, 你在AS2用AS3的.alpha不會出錯是因為AS2可以這樣 02/09 18:48
aquarianboy:的"亂插旗子"(monkey patching) 02/09 18:49
aquarianboy:不過不出錯不代表結果是正常的就是了 02/09 18:49
driftseed:我用的是as2啦 02/09 22:33
aquarianboy:我知道,所以我才這樣寫 :) 02/09 23:04
sudden422:你想作樂透猜號? 02/10 14:45
driftseed:不算是 02/10 15:22
scars:你怎不把onRelease寫在N_mc裡面 然後把T_txt.text轉型 02/10 16:08
N_mc內寫onRelease: A_btn.onRelease = function(){ Num(k); } 這樣嗎? 這樣複製80個N_mc後,會不會無法區分出按了哪個號碼 (每個按鈕都是相同function) (也許不是我想的這樣,麻煩s大敎一下) txt轉型這我也不太懂... ※ 編輯: driftseed 來自: 1.170.130.103 (02/10 16:16)
demojack:寫一個自訂事件在按下按鈕的時候把自己的號碼(參數)包進 02/24 09:43
demojack:去,接著在stage偵聽bobble上來的事件參數即可 02/24 09:45