Flash实例之电子日历

2008-04-02 10:35:19来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


  其实大部分对象并没有大家想得那么难掌控。通过学习这个电子日历效果的制作,读者们不但能够学到(时间)对象的使用方法,还能够对整个对象产生一个具体的认识。

  

制作步骤:

  

配置场景的大小为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时间。假如将格林尼治时间加上不同时区的时间差就能够得到当地时间了。读者朋友也能够自己试着做一个格林尼治时区表。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: 获取有关舞台上的实例的信息

下一篇: 初学者的FLASH基础教程