WEB开发网
开发学院图形图像Flash Flash AS3.0菜鸟学飞教程:间隔循环的三种表现方式... 阅读

Flash AS3.0菜鸟学飞教程:间隔循环的三种表现方式

 2009-12-07 00:00:00 来源:WEB开发网   
核心提示: 清除setTimeout()的调用,使用clearTimeout()函数,Flash AS3.0菜鸟学飞教程:间隔循环的三种表现方式(2), 3、Timer类AS3.0新增了Timer类来实现间隔调用程序,Timer类封装了许多属性、方法和事件,把次数除以10得到秒数, 4、测试影片(在测试时选

清除setTimeout()的调用,使用clearTimeout()函数。

3、Timer类

AS3.0新增了Timer类来实现间隔调用程序,Timer类封装了许多属性、方法和事件。

使用Timer类不会像setInterval()重复积累调用,减少了出错的几率,可以自定义间隔时间,实现与帧频的脱离,是制作间隔效果的首选。

Timer类的构造函数有两个参数,第1个是以毫秒为单位的间隔数字,第2个是重复调用的次数。

创建Timer类的实例:

var myTimer:Timer = new Timer(1000,3);

在构造函数Timer()中,间隔时间为1000毫秒,重复次数为3次,调用从数字1开始,向上递增,当次数等于3时,停止调用。

Timer类有4个属性,两个为只读属性,两个为读写属性:

running属性:是只读属性,表示调用是否进行,如果处于调用状态,running的值为true,否则为false。currentCount属性:是只读属性,表示当前调用的次数。

delay属性:是读写属性,表示间隔调用的时间。

repeatCount属性:是读写属性,表示重复调用的次数。

Timer类有3个方法可调用:

start()方法:用于启动调用

spop()方法:用于停止调用

reset()方法:用于重置调用

Timer类有两个事件,当开始调用时会发生timer事件,调用结束时会发生timerComplete事件。这两个事件都是TimerEvent类的属性,事件名分别为Timer.TIMER和Timer.TIMER_COMPLETE。

下面是制作计时器的实例:

1、新建Flash文档

2、在图层1的第1帧,创建一个实例名为time的动态文本实例。

3、添加as图层,单击第1帧,打开动作面板输入代码: //定义时间间隔
var interval:uint = 100;
//重复次数
var repeat:uint = 120;
//创建实例
var myTimer:Timer = new Timer(interval,repeat);
//注册timer事件
myTimer.addEventListener(TimerEvent.TIMER,timerHandler);
//启动计时器
myTimer.start();
//定义事件的接收函数
function timerHandler(event:TimerEvent):void
{
    //得到Timer类的实例
 var timer:Timer = event.target;
    //计算秒数
 var t:Number = timer.currentCount / 10;
    //保留1位小数
 time.text = t.toFixed(1);
}

每100毫秒调用函数一次,即间隔0.1秒,把次数除以10得到秒数。

4、测试影片(在测试时选择【文件】【发布设置】选【Flash】选项卡,选ActionScript3【设置】把严谨模式的勾去掉)。

Flash AS3.0菜鸟学飞教程:间隔循环的三种表现方式

效果演示:

上一页  1 2 

Tags:Flash AS 菜鸟

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接