flash制作计时器步骤:
一、建立一个按钮,实体名称命名为 playBtn。
二、制作一个影片剪辑,十个关键帧,里面分别为0123456789 这十个数字,因为是倒计时,所以必须是从9到0的顺序。
三、将这个影片剪辑拖入场景,复制四个。分别命名为、one two three four.
四、添加一个输入文本框,inputText。输入60,做为默认设置。单位为秒。
五、第一帧加上以下代码就可以了。
stop();
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.events.TextEvent;
//输入的有效性:只允许输入五位以下的数字
inputText.maxChars=5;
inputText.restrict="0-9";
var snd:Di=new Di();//报警声
var num:Array=[one,two,three,four];//液晶数字动画数组
for (var n:uint=0; n<4; n++) {//初始为0,灰暗
num[n].gotoAndStop(10);
num[n].alpha=0.3;
}
var i:Number=60;//默认60秒
var timer:Timer=new Timer(1000);//按秒计时
timer.stop();
timer.addEventListener(TimerEvent.TIMER,run);
function run(e) {
if (i>0) {//开始倒计时
i--;
if (i<10) {//少于10秒报警
snd.play();
}
var s=i.toString();//数字转字符
var leng:uint=s.length;
for (var j:uint=0; j<4; j++) {
if (j
var k:uint=10-Number(s.substr(j,1));//分离字符得到数字对应的帧号
num[leng-1-j].gotoAndStop(k);
num[leng-1-j].alpha=1;//正在使用的数字动画,高亮
} else {
num[j].gotoAndStop(10);//不用的数字动画处理为显示0
num[j].alpha=0.3;//灰暗
}
}
} else {
timer.stop();//计时完成
playBtn.alpha=1;//开始可用
num[0].alpha=0.3;//最后一个数字动画也变暗
}
}
playBtn.addEventListener(MouseEvent.CLICK,_play);//开始按钮
function _play(e) {
if (playBtn.alpha==1) {//如果按钮处于高亮
init();//按输入框中的时长,初始化显示窗
i=Number(inputText.text);
timer.start();//计时开始
playBtn.alpha=.5;//计时过程中,开始按钮不可再用
}
}
function init() {//初始化函数
var s=inputText.text;
var leng:uint=s.length-1;//文本框中字符末尾总有个“段标志符”
for (var j:uint=0; j<4; j++) {
if (j
var k:uint=10-Number(s.substr(j,1));
num[leng-1-j].gotoAndStop(k);
num[leng-1-j].alpha=1;
} else {
num[j].gotoAndStop(10);
num[j].alpha=0.3;
}
}
}
注意、背景与图像字体形式,自己可以按照创意来改变。
乌鲁木齐flash动画制作 http://www.zhizuoflash.com