2011年2月24日 星期四

[Action Script]用timer寫forloop

使用timer來取代for回圈

可以避掉Flash逾時的問題,但出現逾時的情形,就代表程式要重新修正

除非有其他因素

package {
import flash.display.Sprite;
import flash.events.Event;
import flash.events.TimerEvent;
import flash.utils.Timer;
/**
* ...
* @author james chang
*/
public class addEventfor extends Sprite {
public var sum:int = 0;
public var i:int = 1;
public var timer:Timer = new Timer(100);
public function addEventfor(){
//for (var i:int= 0; sum <= 10; i++) {
//trace(i);
//sum += 1;
//}
timer.addEventListener(TimerEvent.TIMER, forloop);
timer.start();
}

private function forloop(e:TimerEvent):void {
sum += 1;
if (sum >= 10){
timer.stop();
timer.removeEventListener(TimerEvent.TIMER, forloop);
}
trace(sum);
i++;
}

}

}