查看: 2146|回复: 0
打印 上一主题 下一主题

Flash AS教程9:时间日期的AS编写

[复制链接]
.    

3797

主题

11

听众

5万

积分

首席设计师

Rank: 8Rank: 8

纳金币
32328
精华
41

活跃会员 优秀版主 荣誉管理 论坛元老

跳转到指定楼层
楼主
发表于 2012-10-19 21:42:19 |只看该作者 |倒序浏览
FLASH MX中内置的Date函数为我们提供了获取或修改日期及时间的功能。(注:获取的时间是本地电脑的系统时间和日期)下面列出一些基本命令及解释。
一、日期时间的基本命令及解释
getFullYear()   按照本地时间返回 4 位数字的年份数。

getMonth()    按照本地时间返回月份数。

getDate()    按照本地时间返回某天是当月的第几天。

getHours()   按照本地时间返回小时值。

getMinutes()    按照本地时间返回分钟值。

getSeconds()   按照本地时间返回秒数。
以上命令并不是很难理解,都是获取本地机器上日期及时间。但是要使用这些命令,我们必须先用Date 对象的构造函数创建一个 Date 对象的实例。然后,就可以用创建的这个实例来进行操作!命令格式如下:

实例名=new Date() 
二、显示日期及做一个走动的表
下面我们通过一个例子来介绍Date对象的各种命令使用方法。
步骤:
1、新建立一flash文档,将层1改名为:文字显示,并在舞台下方绘制出一个动态文本框,起一个变量名:mytime 如下图:

2、新建立一个层,并把这个新建立的层起名为:表盘,然后使用绘图工具在舞台上绘制出一个不带分针、时针和秒针的表盘。如下图:



3、现在来绘制指针。按Ctrl+F8新建立一个影片剪辑,起名为:指针 ,选择绘图工具,在里面垂直绘制出一条细线做为指针。注意:将线条的下方与影片剪辑的中心点对齐!如下图

4、返回主舞台,新建一个层,改名为:指针—秒  将刚才制作的指针拖放在表盘的中间,注意要把指针的中心点与表盘的中心点对齐。之后,为这个指针实例起一个名字为:sec 我们先做秒针。 如下图:

5、同理,再新建一个层,并起名字为:指针—分 将库里的“指针”元件再拖放出来,并改变这个实例的长度和颜色,让它做为分针。实例名起为:min 如下图:



6、现在按照上面的方法来制作时针,新建一个层,改名为:指针-时  将指针元件拖放在舞台中,与表盘中心对齐,并把这个实例起名为:hour 如下图:



7、呵呵,现在咱们开始编写程序了,为了观察方便,我们再新建一个层,改名为AS,选中AS层的第一桢,打开动作面板,开始编写脚本,首先,我们要让舞台上的动态文本框显示日期及时间。
_root.onEnterFrame = function() {//需要让影片不停执行下面脚本。

mydate = new Date();//首先构建一个名字叫mydate的日期对象,因为以后我们就要用mydate这个实例来控制了。

myear = mydate.getFullYear();//获取本地机器上的年份,并放在myear变量中。

mmon = mydate.getMonth()+1;//获取本地机器上的月份,并放在mmon变量中。因为获取的值是0 代表一月,1 代表二月,依此类推,所以要加上1才正确

mdate = mydate.getDate();//获取本地机器上的本月的第几天,并放在mdate变量中。

mou = mydate.getHours();//获取本地机器上的小时数值,放在mou变量中,这个命令能获取0--23之间的数值。

mm = mydate.getMinutes();//获取本地机器上的分钟数值,并放在mm变量中。

ms = mydate.getSeconds();//获取本地机器上的秒数值,放在ms变量中。

mytime = myear+"年"+mmon+"月"+mdate+"日 "+mou+":"+mm+":"+ms; //让舞台上变量名为mytime的动态文本框显示日期及时间。

}

现在可以测试一下了,可以发现舞台上文本框会显示出日期及时间,那么还有表里面的秒、分、时针怎么跟时间对应起来呢?现在我们加入如下一些脚本:(放在mytie=....那一行下面)

sec._rotation = 6*ms;//利用flash中对象旋转命令来实现指针的走动。_rotation旋转一周是360度,所以,秒针每走一下,就等于走了6度,所以用一个算法来获取每秒的度数6*ms

min._rotation = 6*mm;//同理,让分针也是根据获取的分钟数值乘以6来进行度的旋转。

hour._rotation = mou*30+mm/60*30;//小时的走动,算法稍微复杂一点,因为时针走一圈是12个大格。具体上面的算法有兴趣的朋友可以自己研究一下。
最后完整的脚本如下图:



结束语:日期及时间的AS编写并不复杂,这里我只简单的讲解了获取日期及时间。,当然了,我们还可以进行日期及时间的修改设置,使用的命令及方法与获取类似,有兴趣的朋友可以参看一些flash脚本参考书。希望大家能通过这个简单的例子掌握基本的日期及时间AS的编写。


更多精彩教程,尽在web3D纳金网http://www.narkii.com/college/

文章来源:pconline 作者:寒松
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-15 22:21 , Processed in 0.221053 second(s), 31 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部