发布网友 发布时间:2022-04-23 22:45
共1个回答
热心网友 时间:2023-08-31 17:49
这个问题有点大额…
如果你是问设计思路的话我可以说一下…如果你完全都没想法…建议去网上下个现成的…
以下是设计建议…
看你精度要求高不高,如果精度要求不高的话可以直接把减计时代码做到帧上
(比如你的帧率是50,那么就在第1,51,101…帧上做减计时代码)
如果精度要求比较高(一般是0.01秒)可以试一下AS3的 Timer() 函数
但个人经验表明…如果精度到了毫秒级的时候电脑有点吃力了,电脑稍差的就会出现极大的误差
var SJ:Timer = new Timer(1000);
function SC(event:TimerEvent):void{
SEC++;
if(SEC==60){
SEC=0;
MIN ++;
}
if(SEC<10){
_B_="0"+SEC;
}else{
_B_=SEC;
}
if(MIN<10){
Timer_output.text="0"+MIN+":"+_B_;
}else{
Timer_output.text =MIN+":"+_B_;
}
}
function LSC(event:TimerEvent):void{
SEC--;
if(SEC<0){
SEC+=60;
MIN --;
if(MIN<0){
MIN=0;
SEC=0;
Start_output.text="时间到";
S =2;
SJ.stop();
}
}
if(SEC<10){
_B_="0"+SEC;
}else{
_B_=SEC;
}
if(MIN<10){
Timer_output.text="0"+MIN+":"+_B_;
}else{
Timer_output.text =MIN+":"+_B_;
}
}
代码基本就这个样子…这是个1秒精度的计时代码…全大写的就是变量啦…
希望对你有用