这篇教程是教大家利用Flash制作可以定时的闹钟,在文中,读者将学习到一些基本设计方法和时间对象的使用以及AS的一些基本语法。这个闹钟有显示时间,日期,星期;整点报时;定时闹铃等功能。教程很实用,希望大家认真学习

效果预览图:

设计步骤

一、 设计钟盘

1.设计钟面

1). 新建一个Flash文档,单击“属性”面板中的“尺寸”按钮,打开“文档属性”面板设置场景大小为400px*400px,背景为墨蓝色(#00659C),帧频为12fps。

2). 按快捷键Ctrl+F8打开“新建元件”面板,创建一个“钟盘”图形元件,如图1所示。双击“钟盘”元件中的“图层1”三字,将其名改为“钟盘”。这样做方便对元件的管理和修改,提高工作效率。

图01

3). 点选工具栏中的“椭圆工具”

并去掉填充色,如图2所示。按住Shift键和鼠标左键在“钟盘”元件的场景中拉出一个空心圆来。用“箭头工具”

点选刚才绘制的空心圆后,如图3所示设置其“属性”面板。在点选空心圆后也可以按快捷键Ctrl+I打开“信息面板”进行设置。现在“信息面板”的用处就是设置元件的原点——以场景的左顶点为原点或以场景的中心点为原点

  

图02,图03

4). 按快捷键Shift+F9打开“混色器”面板,在下拉菜单里选择“放射”选项。如图4所示设置,左面滑块的颜色为#880000,右边滑块的颜色为#650101。

图04

5). 点选“颜料桶工具”

,在空心圆中心单击一下鼠标左键着色。

6). 点选刚才绘制的空心圆,按快捷键Ctrl+C(复制),和快捷键Ctrl+V(粘贴)复制出一个空心圆。紧接着在“属性面板”中将其大小设成280px*280px,X轴,Y轴的值设为-140px,线宽为2px。这样使两个空心圆的圆心重合。删除圆最外的边线。内圆线宽为2px可以显示出钟盘的层次感。

7). 按快捷键Ctrl+A全选场景中的元素,按快捷键Ctrl+G把它们组合。到这里,一个具有立体感的钟盘就完成了。最终效果如图5所示。

图05

2.设计时钟刻度

1). 点选“线条工具”

拉出一条横线(长于钟面外圆的直径),用“箭头工具”点选它,按快捷键Ctrl+G组合它。在“属性”面板里把该横线的Y轴值设为0 px(穿过圆心)。同样方法绘制一条穿过圆心的竖线,按快捷键Ctrl+G组合。

2). 点选横线,按快捷键Ctrl+C复制,再按快捷键Ctrl+V粘贴出一条横线。按快捷键Ctrl+T打开“变形”面板。在弹出的“变形”面板里,把“旋转”选项里将线条的角度改为30o。然后敲击Enter确定。再分别制作出角度为60o、120o、150o的三条斜线。最终设置如图6所示。

图06

3). 单击“时间轴”面板里的“插入图层”图标

新建一层,将层改名为“刻度”。

4). 点选“文本工具”

,如图7所示设置“属性”面板,“文本填充色”为黑色。在“钟盘”各刻度的位置写下12个数字。点选“椭圆工具”,在钟盘的中心绘制一个直径为8px的盘心,最后删除刻度线。在整个设计中,刻度线的作用是很重要的,有了刻度线,不但操作起来方便,标出的刻度也很精确。

图07

5). 按快捷键Ctrl+A全选所有刻度,按快捷键Ctrl+G将它们组合。这样,一个具有立体感的钟盘就完成了。最终效果如图8所示。

图08

二、设计旋转指针

1.设计指针

按快捷键Ctrl+F8打开“新建元件”面板,分别创建名为“时针”、“分针”、“秒针”的影片剪辑元件。指针的形状大家随便设计,美观大方即可。不过,有个技术上的问题大家一定要注意:指针在由程序控制转动后,是围绕元件场景中心“╬”旋转的。所以设计时,指针的尾部一定要“╬”上,如图9所示。

图09

2.旋转指针

下面我们来设计一段控制指针旋转的代码。

1). 按快捷键Ctrl+E回到“场景1”,新建四个层,分别改名为“钟盘”、“时针”、“分针”、“秒针”。

2). 按快捷键Ctrl+L打开“库”面板,把库中的“钟盘”、“时针”、“分针”、“秒针”元件拖入相应的层。注意:每个元件的尾部“╬”都要附在钟面的盘心上;层的顺序不要颠倒;锁定或隐藏设计好的层,以便设计其它层。如图10所示。

图10

3). 分别点选“时针”、“分针”、“秒针”三个影片元件,在“属性”面板里分别设置其实例名为“时针”、“分针”、“秒针”。如图11所示。

图11

4). 新建一个“代码”层,点选该层的第1帧,按快捷键F9弹出“动作”面板,输入如下代码。

复制代码代码如下:

function ClockFun() {

// 声明一个名为时间对象

time = new Date();

// 时针每小时旋转30度

hour = time.getHours()*30;

// 分针,秒针每分钟旋转6度

minute = time.getMinutes()*6;

second = time.getSeconds()*6;

// 每过10秒分针度数加1,增加真实性

minute += time.getSeconds()/10;

// 每过2分钟,时针度数加1

hour += time.getMinutes()/2;

// _rotation是影片的角度属性,用来控制影片实例旋转

秒针._rotation = second;

分针._rotation = minute;

时针._rotation = hour;

}

// 每隔1000毫秒执行一次ClockFun函数

setInterval(ClockFun,1000);

5). 注意:以下的代码都书写在代码function ClockFun() 之间。

代码设计好了,快按快捷键Ctrl+Enter测试一下吧。怎么样,看到转动的指针是不是很开心,很HA啊,是不是很想接着再往下做啊!那好吧,让我们继续动起来吧。

三、设计日期显示

1). 锁定其它层。单击“插入图层”图标

新建一层,改名为“日期”层。

2). 点选“文本工具”

,“属性”面板设置见图12所示,“文本填充色”为黑色。

3). 按住鼠标左键在钟盘6点的位置正上方拉出一个动态文本框。将该动态文本框命名为“日期”。最终设置如图12所示。

图12

4). 点选“代码”层的第1帧,打开“动作”面板,再输入如下代码。

复制代码代码如下:

// 把系统当前月数值赋给变量months

months = time.getMonth();

// 如果月数值是个位数,在其前面显示一个零

if (length(months) == 1) {

months = "0"+months;

}

// 把系统当前日数值赋给变量dates

dates = time.getDate();

// 如果日数值是个位数,在其前面显示一个零

if (length(dates) == 1) {

dates = "0"+dates;

}

// 在“日期”文本框内显示系统日期

日期 = time.getFullYear()+"."+months+"."+dates;

注意:因为日期对象的月份是从0开始编号的,所以要将其加1才能得到真实的月份值。按快捷键Ctrl+Enter测试一下,如果操作正确,应该可以看见日期显示。

四、设计星期显示

同日期显示的设计方法。新建一个“星期”层。再建一个名为“星期”的动态文本框,字体为宋体,大小为12。将该文本框放在“日期”文本框的下方。点选“代码”层的第1帧,打开“动作”面板后输入如下代码。

// 定义一个数组

days = new Array(‘星期日‘,‘星期一‘,‘星期二‘,‘星期三‘,‘星期四‘,‘星期五‘,‘星期六‘);

// 把系统的星期值赋给变量day(如星期五时,day的值就是5)

day = time.getDay();

// 在“星期”文本框内显示系统星期

星期 = days[day];

注意:getDay()方法传回的星期值是从0开始的,为了便于理解,所以对应的元素为星期日。按快捷键Ctrl+Enter测试一下。

五、设计时间显示

同以上步骤,新建一个“时间”层。再建一个名为“时间”的动态文本框。将该文本框放在钟盘的上方。点选“代码”层的第1帧,打开“动作”面板,再输入如下代码。

复制代码代码如下:

// 将系统当前小时的值赋给变量hours

hours = time.getHours();

minutes = time.getMinutes();

seconds = time.getSeconds();

// 到零点时,显示两个0

hours = (time.getHours()==0)?

"0"+hours:

time.getHours();

// 如果分钟的值为个位数,就在前面多显示一个零

minutes = (length(minutes) == 1)?

"0"+time.getMinutes():

time.getMinutes();

// 如果秒种值是一位数,就在前面多显示一个零

seconds = (length(seconds) == 1)?

"0"+seconds:

time.getSeconds();

// 显示时间

时间 = hours+":"+minutes+":"+seconds;

按快捷键Ctrl+Enter测试一下,如无法正常显示系统时间,则检查再试。

六、指针旋转声音

没有声音的实例总是让人觉得有点沉闷,乏味。下面设计的一段程序,可以在时钟走动时,发出滴答的声音。这样,效果就被延伸到听觉范围了。

1.单击【窗口】菜单->【其他面板】->【公共库】->“声音”选项打开“声音”库。按快捷键Ctrl+L打开本例的“库”面板。用鼠标左键按住“声音”库中的声音文件Switch Toggle,将其拖入本例的库中。

2.右键单击“库”面板中的声音文件,在弹出的菜单中选择“链接...”命令,打开“链接属性”面板,如图13进行设置。创建声音标识符为“滴答声”。

图13

3.点选“代码”层的第1帧,打开“动作”面板,再输入如下代码。

复制代码代码如下:

// 声明一个声音对象

dida = new Sound();

// 把滴答声附加到新对象中

dida.attachSound("滴答声");

// 播放声音

dida.start();

七、整点报时功能

1.单击【文件】菜单->【导入】->“导入到库”选项。在弹出的“导入到库”面板中选择一个报时的音乐导入(建议导入.mp3格式的音乐)。

2.打开“库”面板,右键单击面板中报时声音文件,在弹出的菜单中选择“链接...”命令,打开“链接属性”面板,创建声音标识符为“报时声”。

3.点选“代码”层的第1帧,打开“动作”面板,再输入如下代码。

复制代码代码如下:

// 声明一个声音对象

gugu = new Sound();

// 把报时声附加到新对象中

gugu.attachSound("报时声");

if (seconds == 0 && minutes == 0)

有了以上这段代码,当整点的时候,整点报时的声音就会响起来了。

八、定时闹铃功能

1.在“场景1”中新建一层,命名为“闹铃”。

2.在钟盘的右侧放置两个“输入”文本框,分别设置其变量名为“时钟”和“分钟”。“属性” 面板的设置随意,文本框的位置参见最终效果图。在两个“输入”文本框中放置一个“静态”文本框,输入冒号。

注意:确定“属性”面板中的“文本”范围图标

要被选中。设置允许最大输入字符数为2(图14)。单击“字符按钮”

,如图15所示进行设置。这样,设置好的“动态文本”框里只允许输入2个数字。

图14

图15

3.单击【文件】菜单->【导入】->“导入到库”选项。在弹出的“导入到库”面板中选择一个闹铃声导入(建议导入.mp3格式的音乐)。

4.打开“库”面板,右键单击刚才导入的声音文件,同上步骤,在弹出的菜单中选择“链接...”命令,打开“链接属性”面板。为了简化文章,笔者在这里还使用“报时声”。

5.点选“代码”层的第1帧,打开“动作”面板,再输入如下代码。

复制代码代码如下:

// 每隔10秒钟闹铃一次

if((时钟 == time.getHours()) && (分钟 == time.getMinutes()) && (time.getSeconds()%10 == 0)) {

gugu.start();

}

测试看效果吧,学会制作这个闹钟后,你至少可以掌握到Flash MX 2004中一些常用面板的使用方法,以及时间对象、声音对象和一些基本AS语法的运用。谢谢大家观看!

原文:http://www.jb51.net/flash/actionscript/181838.html

html flash闹钟,教你用Flash制作可以定时闹钟相关推荐

  1. c语言编写闹钟主程序流程图,[]C51单片机课程设计--定时闹钟.doc

    []C51单片机课程设计--定时闹钟 单片机课程设计定时闹钟PAGE \* MERGEFORMATiii 计算机及信息工程学院 课程设计报告 学年学期 题 目 专业.学号 授课班号 学生姓名 指导教师 ...

  2. html插入flash时钟,教你利用Flash制作一个会走动的时钟(时针,分针,秒针)

    其实制作时钟的方法很多,在此小编利用Flash也制作一个时钟,就当是学习CS3语言的编程技巧吧.下面是具体的实现步骤. 工具/原料 Adobe Flash CS3 方法/步骤 1.新建一Flash文档 ...

  3. 简单的flash小动画成品_怎么制作flash动画?看这里怎么说。

    互联网的发展带动抖音短视频制作浪潮,现在抖音短视频动画很流行,我们会看到很多一些二维动画片段,看多了这些可爱的动画视频,人们都想自己动手做一个简单动画.但是大部分人都是小白,不知道如何制作这样的动画. ...

  4. 怎么在计算机修复flash,win10系统怎么用flash修复器?教你用flash修复器修复视频的方法...

    flash修复器可以解决看网页视频异常,网页flash空白等flash问题,是一款非常不错的工具.win10正式版系统安装上flash修复器,好多新手小白不知道怎么用flash修复器修复视频.其实操作 ...

  5. 20个最佳Flash游戏解析,一步步教你创建Flash游戏

    20个最佳Flash游戏解析,一步步教你创建Flash游戏 http://www.javaeye.com/news/12740-flash Flash算得上是一个家喻户晓的名字,涉及面很广,比如多媒体 ...

  6. 【孙伟】Flash(Adobe Animate)动画制作入门视频教程-孙伟-专题视频课程

    [孙伟]Flash(Adobe Animate)动画制作入门视频教程-347人已学习 课程介绍         首先对动画制作感兴趣,每一个动画都像策划并拍了一场电影! 本视频教程适合初级入门,教会你 ...

  7. 【杰理AC696X】外挂FLASH音乐播放及Bin文件制作

    外挂FLASH音乐播放及Bin文件制作 测试SDK版本:<ac696n_soundbox_sdk_v1.6.0> 文章目录 外挂FLASH音乐播放及Bin文件制作 前言 一.板级配置 1. ...

  8. python开发rpa_几步教你用 Python 制作一个 RPA 机器人!

    原标题:几步教你用 Python 制作一个 RPA 机器人! 作者 | 阿文 出品 | CSDN(ID:CSDNnews) 头图 | CSDN下载自东方IC 繁琐且重复的工作 在我们日常的工作中,有很 ...

  9. html flash 动画效果代码大全,flash动作代码大全

    flash动画代码中的flash动作代码大全 一.几种Action命令 1.影片的播放与停止: Play( )://播放命令 stop( )://停止命令 2.改变Frame流向命令 gotoAndP ...

最新文章

  1. [一个经典的多线程同步问题]解决方案三:互斥量Mutex
  2. 关于计算机组成的ppt,计算机组成课件.ppt
  3. mfc中UpdateData的用法
  4. 如何在 Mac 上将 JPG图像合并为一个PDF
  5. linux下dns劫持C语言实现,Linux下实现劫持系统调用的总结(上)--代码及实现
  6. 怎么禁用html5,如何禁用HTML5视频标签?
  7. Selenium 生成HTML的测试报告
  8. php tokenizer获取所有类,PHP Tokenizer 学习笔记
  9. 04-树4. Root of AVL Tree (25)
  10. 无法初始化windows sockets
  11. 你知道战国四大名将都有谁吗
  12. 网站技术分析报告之——开心网_转载
  13. Ubuntu18.04更新驱动最完美的方法
  14. 爬取某壁纸网站图片(简单爬虫,入门)
  15. 二、python时间序列数据的相减
  16. mysql 表情符号 用什么类型_使MySQL能够存储emoji表情字符的设置教程
  17. 【已解决】error: conflicting declaration ‘typedef struct LZ4_stream_t LZ4_stream_t’ typedef struct { long
  18. 在计算机内部除顶点,西交17年3月课程考试《CADCAM》作业考核试题答案 1.通常我们将数据的物理结构称为数据 ......
  19. 记录解决问题--ie闪退
  20. Sherlock视觉,支持任意相机,我们是专业Sherlock视觉 sherlock支持二次开发,同时也支持 VB,VC,C#的界面封装

热门文章

  1. 【Windows】win10任务栏图标空白的解决方案
  2. [DLX+bfs] hdu 4069 Squiggly Sudoku
  3. Hash索引和BTree索引区别
  4. @赛迪顾问拍了拍我:数据标注基地全国多点开花
  5. WordPress未能连接到FTP服务器 xxxxxxx:21
  6. Linux Kernel 6.0 CXL Core pci.c 详解
  7. HA架构中的脑裂,什么是脑裂,怎样预防脑裂?
  8. 搜狗微信APP逆向(二)so层
  9. 【Java】装箱拆箱
  10. (Leiden)From Louvain to Leiden:guaranteeing well-connected communities