Board logo

标题: 制作一个时钟--FLASH编程入门教材[原创] [打印本页]

作者: 紫色流星    时间: 2005-3-23 15:14     标题: 制作一个时钟--FLASH编程入门教材[原创]

很多人在别的论坛上要求我制作一个教程教给大家制作FLASH,今天特意制作一个小小的时钟,来讲述一下FLASH编程的基本知识。望大家多多支持。

首先提供源文件:时钟.fla和动画文件:时钟.swf下载。

注意:该动画的所有程序和界面均来自FLASH MX Profassional 7.2,低于该版本的将不能打开源文件,播放器低于7.0者将不能正常播放动画。


本来打算作为附件的,可是系统不支持,请大家到我的论坛去下载吧!

http://flasher.bbs.topzj.com/vie ... &page=1#pid8534
作者: 紫色流星    时间: 2005-3-23 15:15

首先,设置好文档的属性。由于我制作时采用的是FLASH自带时钟模板,钟面大约为270*270,所以文档大小也为270*270,可略大于该数字,但不可小于,否则会出现显示不完全的现象。

背景颜色随意,但最好淡雅一点,作者使用了淡紫色 。

帧频12fps。OK。

图片附件: 1.JPG (2005-3-23 15:15, 17.17 KB) / 下载次数 25
http://heubbs.com/attachment.php?aid=297&k=1b7b9a816d1b83d6bf3a9f89de241092&t=1732368811&sid=vvO656


作者: 紫色流星    时间: 2005-3-23 15:15

然后,把钟面从库中拖入舞台,与舞台边框对齐,这个对于大家没有难度吧?

图片附件: 2.JPG (2005-3-23 15:15, 34.96 KB) / 下载次数 17
http://heubbs.com/attachment.php?aid=298&k=7794e42aeebcf265cc7e5131931e820a&t=1732368811&sid=vvO656


作者: 紫色流星    时间: 2005-3-23 15:20

第三步,把时针拖出来,注意,一定要与钟面中心对齐!否则会出现不正常哦~

这需要说明,元件时针的中心(是元件中心,不是几何中心)建立在要旋转的地方,时针嘛,一般是末尾咯~

然后,注册元件名hh。当然可以选择其他名字,无所谓,这相当于一个变量而已。

图片附件: 3.JPG (2005-3-23 15:20, 134.82 KB) / 下载次数 17
http://heubbs.com/attachment.php?aid=307&k=8a16f44682f6f978cc126993648ecd50&t=1732368811&sid=vvO656


作者: 紫色流星    时间: 2005-3-23 15:21

然后,把分针和秒针拖动到位,分别命名:mh和sh,这样,所有表面的工作就确定了!

补充一下:所有的针应该竖直向上哦!

下一步可以开始编写程序了。

图片附件: 4.JPG (2005-3-23 15:21, 134.95 KB) / 下载次数 17
http://heubbs.com/attachment.php?aid=308&k=ef0c941c4975da84dba1588964ea840c&t=1732368811&sid=vvO656


作者: 紫色流星    时间: 2005-3-23 15:23

单击第一帧,在舞台上输入程序,为了防止初学者点错地方,我特意加了路径,即使大家点错,也不打紧。最好不要错哦!

F9打开动作编辑面板,输入:

_root.onEnterFrame = function() {
        //建立一个事件触发器。
        my_date = new Date();
        //建立一个时间对象my_date。
        hour = my_date.getHours();
        minute = my_date.getMinutes();
        second = my_date.getSeconds();
        //从对象中分别获得小时、分钟、秒钟。
        _root.hh._rotation = hour*30+minute*0.5;
        _root.mh._rotation = minute*6+second*0.1;
        _root.sh._rotation = second*6;
};

这个就不详细讲述了,大家哪里不会可以问。

图片附件: 5.JPG (2005-3-23 15:23, 131.28 KB) / 下载次数 17
http://heubbs.com/attachment.php?aid=309&k=6b725fffc8ad553223afb94c328f31dc&t=1732368811&sid=vvO656


作者: 紫色流星    时间: 2005-3-23 15:24

然后测试电影。

图片附件: 6.JPG (2005-3-23 15:24, 136.96 KB) / 下载次数 17
http://heubbs.com/attachment.php?aid=310&k=8afc2a6abad7255b103735990dc6b9e5&t=1732368811&sid=vvO656


作者: 紫色流星    时间: 2005-3-24 08:56

Originally posted by 球球 at 2005-3-23 16:23:
不用定义变量?
弱智的问题哈~~~嘿嘿~~~不会嘛

什么叫不用定义变量?
作者: 紫色流星    时间: 2005-3-24 21:31

Originally posted by 球球 at 2005-3-24 14:07:
不是比较类似java么
不用定义hour 这些变量么

你可以使用var:hour=new Number();
来定义啊~不过默认的是数据类型,就没有必要改动了~
作者: 紫色流星    时间: 2005-3-25 18:03

Originally posted by 球球 at 2005-3-24 22:41:
今天偶本来想做一个自己画的
最后偶疯了
时钟也没出来

关键是理解里面的程序,作画不重要啊!
作者: 我是JEANS    时间: 2005-3-27 18:09

那楼主怎么不参加五四之类的比赛
作者: 紫色流星    时间: 2005-3-28 21:35

Originally posted by 我是JEANS at 2005-3-27 18:09:
那楼主怎么不参加五四之类的比赛

我已经申报了~




欢迎光临 工程家园 (http://heubbs.com/) Powered by Discuz! 7.2