谁会移动时钟的(Flash)代码(一般的时钟是以秒跳动的,我要的不是秒跳动的时钟代码。而是移动的那种)?

 我来答
匿名用户
2013-11-09
展开全部
要想制作双历指针式钟表,就要先制作电子表,利用系统函数获得当前的时间和日期,利用动态文本框显示变量值。然后分析秒针、分针、和时针的旋转角度与时间的关系,通过这个数学模型,我们就能做出双历指针式钟表。 具体步骤 1、 运行Flash MX 2004,新建影片剪辑,命名为“表盘”。进入编辑区绘制一条直线,单击【窗口】|【设计面板】|【变形】命令,打开变形面板,添入旋转角度为30度,拷贝并应用变形。按照同样方法,绘制出其他分钟的刻度。如图3.3.91所示。 2、 在背景层中我们添加三个动态文本框,变量名称为:“weeks”,“days”和“timebox”。如图3.3.92所示。 3、 分别新建三个影片剪辑,命名为“时针”,“分针”,“秒针”。绘制三个指针的形状。注意指针的中心点的位置。如图3.3.93所示。 4、 导入一段指针移动的模拟音乐。在声音文件的连接属性中选择“为动作脚本导出”,命名为“sound”。 5、 新建一个影片剪辑,命名为“音乐”。在第1帧添加as:stop(); 第2帧插入空白关键帧,添加as: ss = new Sound(); ss.attachSound("sound"); ss.start(); ss.onSoundComplete = function() { ss.start(); }; //调用库中的声音文件sound 6、返回到场景1,把“表盘”影片剪辑拖放到舞台中,利用对齐面板使之处与舞台中央位置。 7、新建一个图层,绘制一个中心点。同样利用对齐面板使之处与中央位置。 8、新建三个图层,分别放置“时针”,“分针”,“秒针”影片剪辑。注意,影片剪辑的中心点要与步骤6绘制的中心点重合。如图3.3.94所示。 9、 新建一个音乐层,把“音乐”影片剪辑放置在场景的任何位置。在下面的属性面板中,命名为“777”。 10、 分别选择“时针”,“分针”,“秒针”三个影片剪辑,在下面的属性面板中分别命名为“hourpoints”,“minutepoints”和“secondpoints”。 11、 好了,准备工作已经完成了。下面我们添加AS。 12、 选中“表盘”影片剪辑,添加as语句: onClipEvent (load) { weekArray = new Array(’星期日’, ’星期一’, ’星期二’, ’星期三’, ’星期四’, ’星期五’, ’星期六’);//建立一个数组,共七个元素 timedate = new Date();//建立一个新的时间对象 } onClipEvent (enterFrame) { week = timedate.getDay();//返加0~6,0时取“星期日”;1时取“星期一”……. weekday = weekArray[week];//从数组中读取中文显示,参看上一句的解释 day = timedate.getDate();//当前的日期,返回值为1~31 hour = timedate.getHours();//当前的时,返回0~23 minute = timedate.getMinutes();当前的分,返回0~59 second = timedate.getSeconds();当前的秒,返回0~59 if (hour<10) { hour = "0" + hour;//如果时小于10,前面显示加“0” } if (minute<10) { minute = "0" + minute;//同上 } if (second<10) { second = "0" + second;//同上 } timebox = hour+" : "+minute+" : "+second;//显示在动态文本框中 weeks = weekday;//同上一句 days = day;//同上一句 delete timedate;//删除时间对象,目的是实时显示时间 timedate = new Date();//新建时间对象 } 13、 选择“时针”影片剪辑,添加as语句: onClipEvent (enterFrame) { hourangle = _root.clock.hour*30+_root.clock.minute/2; //把钟表符号中的时针对应的角度值赋值给变量“hourangle” setProperty ("_root.hourpoints", _rotation, hourangle); }//设置分针的旋转角度 14、 选择“分针”影片剪辑,添加as语句: onClipEvent (enterFrame) { minuteangle = _root.clock.minute*6; //把钟表符号中的分针对应的角度值赋值给变量“minuteangle” setProperty ("_root.minutepoints", _rotation, minuteangle); }//设置分针的旋转角度 15、 选择“秒针”影片剪辑,添加as语句: onClipEvent (enterFrame) { secondsangle = _root.clock.second*6; //把钟表符号中的秒针对应的角度值赋值给变量“secondsangle” setProperty ("_root.secondpoints", _rotation, secondsangle); }//设置秒针的旋转角度 16、测试,保存。请参看源文件“时钟”。 特别说明 要实现指针式双历钟表,要掌握的知识包括:FLASH的日期型函数和变量的使用,文本框的设置,时间显示的调整,数组的简单应用,以及如何实时的、动态的显示时间;最主要的是利用指针的角度与当前时间的函数关系,才能使时钟准确的指示时间。从中可以看出,如果推理不出这个函数关系,就做不成。所以我们应该多学习一下,多练练自己的逻辑思维能力参考资料: http://www2.flash8.net/teach/3897.htm
匿名用户
2013-11-09
展开全部
不知这个你是否满意:

function bb(){
var rqi:Date = new Date();//建立一个时间数据
var wzrqi:String = ((rqi.getMonth()+1)+"月"+rqi.getDate()+"日");//获得年月日
riqi.text=wzrqi;
nian.text=rqi.getFullYear()+"年";
var shuzu:Array = new Array("日","一","二","三","四","五","六");//创建一个长度为0或更大的值
var fuzhi:String = shuzu[rqi.getDay()];//给数组赋值
xingqi.text="星期"+fuzhi;//给xingqi文本框赋值
if(rqi.getHours()<10){
xiao="0"+rqi.getHours();
} else {
xiao=rqi.getHours();
}
if(rqi.getMinutes()<10){
fengzhong="0"+rqi.getMinutes();
} else {
fengzhong=rqi.getMinutes();
}
if(rqi.getSeconds()<10){
miaoz="0"+rqi.getSeconds();
} else {
miaoz=rqi.getSeconds();
}
shijian.text=xiao+":"+fengzhong+":"+miaoz;
miaozhen._rotation=miaoz*6;
fenzhong._rotation=fengzhong*6;
shizhen._rotation=xiao*30;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式