作者titidoby (朵麗絲。王)
看板Flash
標題[問題] 可以把trace出的資料儲存在變數或是一個list嗎?
時間Fri May 7 16:51:53 2010
小妹又來請教各位大大們了....〒△〒
先前的氣泡排序法雖然有大大幫我解決一部份的問題(先謝rock大大)
但因為小妹想要用動畫step by step來呈現泡泡移動的方式...
所以一開使想要用偵測的方式將每次陣列有變化時去去執行動畫...
但因小妹功力太差,不知道該怎麼讓迴圈中斷...
所以想到先讓迴圈全部跑完,然後用trace的資料來判斷是否要進行動畫
但.....但是小妹不知道該
用什麼方法把trace的資料儲存起來讓變數使用@@
希望有神人大大幫忙解決這個問題阿~~~(困擾兩三天...TT...)
謝謝大家~~(鞠躬)
=========
原始檔
=========
var a:Array= [7,6,5,4];//給ball的值
_btn.addEventListener(MouseEvent.CLICK,onClick);
//產生泡泡
for(var i:int=0;i<4;i++) //選擇幾個泡泡
{
var ball:MovieClip=this;//new bobble()
ball['b'+i].num_txt.text=a[i];
}
//移動泡泡
function onClick(e:MouseEvent):void
{
for(var i:int=0;i<(a.length-1);i++)
{
//由於外層迴圈每執行一次,會確認一個泡泡的位置,因此內層迴圈
//不必每次都執行a.length-1次
for(var j:int=0;j<(a.length-1-i);j++)
{
//泡泡前後比較數值大小,如果前者大於後者,交換數值
if(a[j]>a[j+1])
{
var temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
//trace可以把所有變化都輸出,但是小妹我不知道怎麼抓@@
trace('a='+a);
trace('-------------');
}
}
}
}
謝謝a大....TT....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.127.112.221
※ 編輯: titidoby 來自: 140.127.112.221 (05/07 16:56)
→ aquarianboy:trace的回傳型態是void,所以別期待它會回傳什麼結果 05/07 17:29
→ aquarianboy:不過我不懂為什麼需要用trace的結果來做判斷? 05/07 17:29
→ aquarianboy:即然你都能trace出來了,怎麼不在trace之前就做判斷? 05/07 17:29
→ Esvent:就把trace的內容指定給某個變數不好了? 05/07 17:31
→ titidoby:因為迴圈內就變動4次,我都只能抓到最後1次,但是trace出 05/07 17:34
→ titidoby:現的卻可以將每次變化的輸出出來@@... 05/07 17:35
→ aquarianboy:那是因為你不知道怎麼用迴圈的關係.. :) 05/07 17:38
→ titidoby:喔喔~那請問a大,小妹應該要怎麼修改呢@@... 05/07 17:41
→ aquarianboy:你並沒有貼你的原始檔出來 05/07 17:53
※ 編輯: titidoby 來自: 140.127.112.221 (05/07 17:55)
※ 編輯: titidoby 來自: 140.127.112.221 (05/07 17:58)
→ titidoby:已附上原始碼..TT 05/07 17:59