马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
AdobeFlashCS5.5中的动画制作更简单,借助基于对象的动画快速创建动画、轻松修改运动路径并全面控制个别动画属性。
poluoluo中心提醒:在本AS3.0教程中我们将进修到距离轮回的三种体现体例,但愿对伴侣们有所匡助.
在本AS3.0教程中我们将进修到距离轮回的三种体现体例,但愿对伴侣们有所匡助~~假如想使动画不依附于帧频,可以使用3种办法:
1、setlnterval()函数
setlnterval()函数感化是每隔必定的工夫,就挪用函数
setlnterval()函数的情势为:
setlnterval(函数名,工夫距离,函数参数);
函数名是自界说的函数的名,工夫距离为毫秒,函数参数是自界说函数的参
上面制造一个计时器:
//工夫的初始值
vart:int;
//界说一个无参函数
functiontime()
{
//输入工夫
trace(++t/10);
}
//每隔0.1秒挪用一次函数
setInterval(time,100);
测试下面的代码,可在输入面板中看到工夫以0.1秒在递增。
提醒:setlnterval()函数每隔0.1秒挪用一次函数,变量t以加1的体例举行递增,t除以10后可暗示工夫。
上面的代码挪用一个有参函数:
//界说一个有参函数
functiontest(message)
{
trace(message);
}
//每隔500毫秒挪用一次函数,输入“挪用函数”
setInterval(test,500,"挪用函数");
扫除setInterval()的挪用,利用clearInterval()函数
提醒:要实时扫除setInterval()函数的挪用,不然会招致setInterval()函数的反复挪用。
2、setTimeout()函数
setTimeout()函数的利用办法与setlnterval()函数的利用办法不异,也是每隔必定工夫就挪用函数。
setTimeout()函数的一样平常情势为:
setTimeout(函数名,工夫距离,函数参数);
挪用一个无参函数:
//自界说函数,输入信息
functiontest()
{
trace("函数挪用");
}
//每隔1000毫秒挪用一次test(),输入信息。
setTimeout(test,1000);
扫除setTimeout()的挪用,利用clearTimeout()函数。
3、Timer类
AS3.0新增了Timer类来完成距离挪用程序,Timer类封装了很多属性、办法和事务。
利用Timer类不会像setInterval()反复堆集挪用,削减了堕落的概率,能够自界说距离工夫,完成与帧频的离开,是制造距离效果的首选。
Timer类的机关函数有两个参数,第1个是以毫秒为单元的距离数字,第2个是反复挪用的次数。
创立Timer类的实例:
varmyTimer:Timer=newTimer(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帧,翻开举措面板输出代码:
//界说工夫距离
varinterval:uint=100;
//反复次数
varrepeat:uint=120;
//创立实例
varmyTimer:Timer=newTimer(interval,repeat);
//注册timer事务
myTimer.addEventListener(TimerEvent.TIMER,timerHandler);
//启动计时器
myTimer.start();
//界说事务的吸收函数
functiontimerHandler(event:TimerEvent):void
{
//失掉Timer类的实例
vartimer:Timer=event.target;
//盘算秒数
vart:Number=timer.currentCount/10;
//保存1位小数
time.text=t.toFixed(1);
}每100毫秒挪用函数一次,即距离0.1秒,把次数除以10失掉秒数。
4、测试影片(在测试时选择【文件】【公布设置】选【Flash】选项卡,选ActionScript3【设置】把松散形式的勾往失落)。
效果演示:
[media=wmv,550,400][/media]
此版本基于官方简体中文正式版制作,只需要执行一次快速安装即可使用,包含AdobeFlashProfessionalCS5.5、ExtendScriptToolkitCS5.5、PixelBenderToolkit2.6。 |