查看: 2065|回复: 2
打印 上一主题 下一主题

Flash实例之电子日历

[复制链接]
.    

3797

主题

11

听众

5万

积分

首席设计师

Rank: 8Rank: 8

纳金币
32328
精华
41

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

跳转到指定楼层
楼主
发表于 2012-10-30 17:57:52 |只看该作者 |倒序浏览
文章来源:sucai123.com
文章简介:
其实大部分对象并没有大家想得那么难掌握。通过学习这个电子日历效果的制作,读者们不仅可以学到(时间)对象的使用方法,还可以对整个对象产生一个具体的认识。
制作步骤:
设置场景的大小为240px×160px,背景色为黑色,帧频为15fps
1.按快捷键Ctrl+F8,然后创建一个“背景”图形元件。在“背景”的场景中按快捷键Ctrl+R打开“导入”面板导入一幅背景图。如图1-2所示。图片的大小应该和场景的大小一致。
图1-2
2.把主场景中的“图层 1”改名为“背景”层,打开库,把“背景”元件从库中拖拽到“背景”层中。现在教大家一个调整背景图片和场景快速重叠的技巧。首先选中背景图片,接着按快捷键Ctrl+K键或是点击图标 打开“对齐”面板,然后按下“舞台分布”图标 ,如图1-3所示。
图1-3
接着单击左对齐,上对齐图标就即可。
3.点选“工具”面板中的“文本”工具 ,然后如图1-4所示设置“属性”面板。 图1-4
4.接着创建一个“文本”层,用来放置几个动态文本,如图1-5所示。
图1-5
在“文本”层中绘制5个动态文本,如图7-6所示。然后分别为其申明变量名:yeahtext、daytext、weektext、half、timetext。
图1-6
5.设置好动态文本后。再创建一个“脚本”层,用来放置代码。如图1-5所示。右键单击该层的第1帧,在弹出的菜单中选择“动作”命令,或按F9键打开“动作”面板。然后键入以下代码。代码的作用是让动态文本能够显示系统当前的时间,日期,年份等。


   
        
            
            
               
                    
                        
                        // 创建新的日期对象,然后调用其方法和属性

                        time = new Date();

                        // 把系统当前的时钟值赋给变量hour

                        hour = time.getHours();

                        // 把系统当前的分钟值赋给变量minute

                        minute = time.getMinutes();

                        // 把系统当前的秒种值赋给变量second

                        second = time.getSeconds();

                        milli = int(time.getMilliseconds()/10);

                        // 如果分钟值小于10,就在其前面加一个字符"0",这样设计才符合常理

                        if (minute < 10) {

                           minute = "0"+minute;

                        }

                        // 如果秒钟值小于10,就在其前面加一个字符"0"

                        if (second<10) {

                           second = "0"+second;

                        }

                        //如果毫秒值小于10,就在其前面加一个字符"0"

                        if (milli<10) {

                           milli = "0"+milli;

                        }

                        // 如果时钟值小于12,则在half文本里显示字符串"上午",否则显示为下午

                        if (hour<12) {

                           half = "上午";

                           } else {

                           half = "下午";

                        }

                        // 在yeahtext文本里显示系统年份

                        yeahtext = time.getFullYear();

                        //在daytext文本里显示系统前日期

                        daytext = time.getMonth()+1+" 月 "+time.getDate()+" 日";

                        //在weektext文本里显示系统星期

                        weektext = "星期 "+time.getDay();

                        //在timetext文本里显示系统时间

                        timetext = hour + ":" + minute + ":" + second + milli;
                        
                    
               
            
            
        
   


6.最后一步。按住Shift键,同时又鼠标左键点击选中是个层,使其显示为阴影,然后按F5键为三个层同时插入一帧。

图1-7
好了。现在按快捷键Ctrl+Enter来测试一下效果。其实利用实例中的代码,结合电影属性和一些设计的技巧,可以设计出形形色色的时间效果。譬如什么电子表、手表、闹钟,年历;或是控制动画跟随时间变化;或是用在各种广告贺卡和MTV的效果中。在游戏中Date对象就显得更加重要了,它可以用来设计纪录游戏时间的计时器,或是控制游戏的进程。
另外还要讲一下得是,Date对象中UTC时间格式是在方法中加上字符UTC,例如getUTCHours(),它能输出现在的UTC时间。如果将格林尼治时间加上不同时区的时间差就可以得到当地时间了。读者朋友也可以自己试着做一个格林尼治时区表。
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

0

主题

1

听众

2458

积分

中级设计师

Rank: 5Rank: 5

纳金币
0
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2014-2-22 18:19:23 |只看该作者
Thanks for sharing
回复

使用道具 举报

0

主题

2

听众

3238

积分

中级设计师

Rank: 5Rank: 5

纳金币
0
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

板凳
发表于 2014-2-28 10:05:08 |只看该作者
感谢分享
回复

使用道具 举报

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

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

GMT+8, 2024-11-13 20:33 , Processed in 0.102827 second(s), 32 queries .

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

© 2008-2019 Narkii Inc.

回顶部