FLASH制作计算时间的小程序(AS3)
1、打开软件,新建AS3文档。

2、在舞台放6个输入文本,用于输入时间点。

3、依次设置6个输入文本框的实例名为t0,t1,t2,t3,t4,t5,其它参数如图所示:

4、继续往舞台放3个动态文本,用于显示结果。

5、依次设置3个动态文本框的实例名为t6,t7,t8,其它参数如图所示:

6、制作两个按钮,一个是加时间,实例名为btn_add,一个是减时间,实例名为btn_reduce



7、在主时间轴加如下代码:
var t_count:int=9;
var numAry:Array=new Array();
initTxt();
function initTxt():void
{
for(var i:int=0;i<t_count;i++)
{
this["t"+i].text="0";
}
btn_add.addEventListener(MouseEvent.CLICK,AddTimeNumber);
btn_reduce.addEventListener(MouseEvent.CLICK,ReduceTimeNumber);
}
function AddTimeNumber(e:MouseEvent):void
{
var num0:Number=TimeToNumber(Number(t0.text),Number(t1.text),Number(t2.text));
var num1:Number=TimeToNumber(Number(t3.text),Number(t4.text),Number(t5.text));
var tempAry:Array=NumberToTime(num0+num1);
t6.text=tempAry[0].toString();
t7.text=tempAry[1].toString();
t8.text=tempAry[2].toString();
}
function ReduceTimeNumber(e:MouseEvent):void
{
var num0:Number=TimeToNumber(Number(t0.text),Number(t1.text),Number(t2.text));
var num1:Number=TimeToNumber(Number(t3.text),Number(t4.text),Number(t5.text));
var tempAry:Array=NumberToTime(num0-num1);
if(num1>num0)
{
tempAry=NumberToTime(3600*24+num0-num1);
}
t6.text=tempAry[0].toString();
t7.text=tempAry[1].toString();
t8.text=tempAry[2].toString();
}
function NumberToTime(num:Number):Array
{
var tempAry:Array=new Array();
tempAry.push(int(num/3600));
num=num-tempAry[0]*3600;
tempAry.push(int((num)/60));
num=num-tempAry[1]*60;
tempAry.push(num);
tempAry[0]=tempAry[0]%24;
return tempAry;
}
function TimeToNumber(hour:Number,minute:Number,second:Number):Number
{
var num:Number=hour*3600+minute*60+second;
return num;
}

8、运行后就可以输入两个时间点进行计算了。
