永发信息网

AS3 setTimeOut,setInterval,Timer 的区别和用法

答案:4  悬赏:30  手机版
解决时间 2021-03-02 15:07
  • 提问者网友:精神病院里
  • 2021-03-01 23:40
AS3 setTimeOut,setInterval,Timer 的区别和用法
最佳答案
  • 五星知识达人网友:白昼之月
  • 2021-03-02 00:19
setTimeOut:设置超时时间,只会执行一次!
setInterval:设置一个间隔时间,间隔多久会触发一次!除非 remove,否则会永久执行下去!
Timer:设置一个间隔时间,有次数限制,只执行制定次数!
参数说明:
setTimeOut(函数名,延迟时间,参数);
setInterval(函数名,延迟时间,参数);
Timer(延迟时间,执行次数);
举例:
1.setTimeOut
package {
import flash.display.Sprite;
import flash.utils.*;
public class SetTimeoutExample extends Sprite {
private var delay:Number = 1000; // delay before calling myDelayedFunction
public function SetTimeoutExample() {
var intervalId:uint = setTimeout(myDelayedFunction, delay, "Hello", "World");
}
public function myDelayedFunction():void {
trace(arguments[0] + " " + arguments[1]);
}
public function clearTimeout():void {
if(intervalId>0) {
clearTimeout(intervalId);
}
}
}
}

2.setInterval
package {
import flash.display.Sprite; import flash.utils.*;
public class SetIntervalExample extends Sprite {
private var intervalDuration:Number = 1000; // duration between intervals, in milliseconds
private var intervalId:uint;
private var counter:uint = 0;
private var stopCount:uint = 3;
public function SetIntervalExample() {
intervalId = setInterval(myRepeatingFunction, intervalDuration, "Hello", "World");
}
public function myRepeatingFunction():void {
trace(arguments[0] + " " + arguments[1]);
counter++;
if(counter == stopCount) {
trace("Clearing Interval");
clearInterval(intervalId);
}
}
}
}

3.Timer
package {
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.display.Sprite;
public class TimerExample extends Sprite {
public function TimerExample() {
var myTimer:Timer= new Timer(1000, 2);
myTimer.addEventListener("Timer", timerHandler);
myTimer.start();
}
public function timerHandler(event:TimerEvent):void {
trace("timerHandler: " + event);
}
}
}
全部回答
  • 1楼网友:鱼芗
  • 2021-03-02 03:30
settimeout setinterval是as2.0中延续下来的定时器方法,timeout一般是定时一次 interval一般是用于循环定时,直到清除定时器为止的场合。 timer是as3中引入的面向对象的定时器类。 具体用法请你百度 flash settimeout flash setinterval flash timer 查看,因为实在多到爆的无数资料。
  • 2楼网友:煞尾
  • 2021-03-02 02:08
setTimeOut:设置超时时间,只会执行一次! setInterval:设置一个间隔时间,间隔多久会触发一次!除非 remove,否则会永久执行下去! Timer:设置一个间隔时间,有次数限制,只执行制定次数! 参数说明: setTimeOut(函数名,延迟时间,参数); setInterval(函数名,延迟时间,参数); Timer(延迟时间,执行次数); 举例: 1.setTimeOut package { import flash.display.Sprite; import flash.utils.*; public class SetTimeoutExample extends Sprite { private var delay:Number = 1000; // delay before calling myDelayedFunction public function SetTimeoutExample() { var intervalId:uint = setTimeout(myDelayedFunction, delay, "Hello", "World"); } public function myDelayedFunction():void { trace(arguments[0] + " " + arguments[1]); } public function clearTimeout():void { if(intervalId>0) { clearTimeout(intervalId); } } } } 2.setInterval package { import flash.display.Sprite; import flash.utils.*; public class SetIntervalExample extends Sprite { private var intervalDuration:Number = 1000; // duration between intervals, in milliseconds private var intervalId:uint; private var counter:uint = 0; private var stopCount:uint = 3; public function SetIntervalExample() { intervalId = setInterval(myRepeatingFunction, intervalDuration, "Hello", "World"); } public function myRepeatingFunction():void { trace(arguments[0] + " " + arguments[1]); counter++; if(counter == stopCount) { trace("Clearing Interval"); clearInterval(intervalId); } } } } 3.Timer package { import flash.utils.Timer; import flash.events.TimerEvent; import flash.display.Sprite; public class TimerExample extends Sprite { public function TimerExample() { var myTimer:Timer= new Timer(1000, 2); myTimer.addEventListener("Timer", timerHandler); myTimer.start(); } public function timerHandler(event:TimerEvent):void { trace("timerHandler: " + event); 希望对你有帮助!有帮助望采纳!
  • 3楼网友:末日狂欢
  • 2021-03-02 01:25
AS3 setTimeOut,setInterval,Timer都是起定时作用,但用法有所不同。 1、setTimeOut:设置超时时间,只会执行一次! 参数说明: setTimeOut(函数名,延迟时间,参数); 用法: package { import flash.display.Sprite; import flash.utils.*; public class SetTimeoutExample extends Sprite { private var delay:Number = 1000; // delay before calling myDelayedFunction public function SetTimeoutExample() { var intervalId:uint = setTimeout(myDelayedFunction, delay, "Hello", "World"); } public function myDelayedFunction():void { trace(arguments[0] + " " + arguments[1]); } public function clearTimeout():void { if(intervalId>0) { clearTimeout(intervalId); } } } } 2、setInterval:设置一个间隔时间,间隔多久会触发一次!除非 remove,否则会永久执行下去! 参数说明: setInterval(函数名,延迟时间,参数); 用法: package { import flash.display.Sprite; import flash.utils.*; public class SetIntervalExample extends Sprite { private var intervalDuration:Number = 1000; // duration between intervals, in milliseconds private var intervalId:uint; private var counter:uint = 0; private var stopCount:uint = 3; public function SetIntervalExample() { intervalId = setInterval(myRepeatingFunction, intervalDuration, "Hello", "World"); } public function myRepeatingFunction():void { trace(arguments[0] + " " + arguments[1]); counter++; if(counter == stopCount) { trace("Clearing Interval"); clearInterval(intervalId); } } } } 3、Timer:设置一个间隔时间,有次数限制,只执行制定次数! 参数说明: Timer(延迟时间,执行次数); 用法: package { import flash.utils.Timer; import flash.events.TimerEvent; import flash.display.Sprite; public class TimerExample extends Sprite { public function TimerExample() { var myTimer:Timer= new Timer(1000, 2); myTimer.addEventListener("Timer", timerHandler); myTimer.start(); } public function timerHandler(event:TimerEvent):void { trace("timerHandler: " + event); } } }
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯