当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > 为AS2.0添砖加瓦-编写类扩展(3)

Flash动画制作
fmx2004 1000问(5)
Flash MX 2004 组件事件简单调试器
fmx2004 1000问(2)
Action Script 2.0新手调试
Flash 2004 MX Components
flash action 详解(9)
flash action 详解(7)
flash action 详解(1)
flash action 详解(6)
一个用纯AS写的正态曲线画法
flash action 详解(3)
浅谈AS的绘图功能及几个简单的实例
AS的基本代码解释(2)
flash action 详解(2)
flash action 详解(10)
运用for循环来对多个mc进行检测
极坐标在绘画方法中的运用
用Flash 2004编写简单的运算类
flash action 详解(4)
flash action 详解(5)

Flash动画制作 中的 为AS2.0添砖加瓦-编写类扩展(3)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 53 ::
收藏到网摘: n/a

FLASH时钟类 clock.as

功能:自动控制时.分.秒针围绕

演示两个FLASH时钟,引用的是同一个clock.as(界面做得随便了.重要的是as)


clock.as源码分析:

这个不是扩展类.而是一个自定义类.通过自定一个DATE对象.再利用DATE对象本身的方法
求值后.通过自定义对象返回想要的值.就成了一个公共类.让MC或文本框等FLASH元素直接
调用.


class clock
{
var newdate:Date;//建立一个日期变量

function get_newdate()
{
newdate = new Date();//把这个变量变成一个日期对象
}

function get_Seconds()//得到秒钟转动角度
{
get_newdate();
return newdate.getSeconds()*6;
}

function get_Minutes()//得到分钟转动角度
{
get_newdate();
return newdate.getMinutes()*6+newdate.getSeconds()/10;
}

function get_Hour()//得到时钟转动角度
{
get_newdate();
return newdate.getHours()*30+newdate.getMinutes()/2;
}
}



再建立一个FLA,画好表盘.再把时秒,分钞,秒钟分别做成MC,
分别命名为:hour,minute,second

然后在LAYER1的第一帧写上调用CLASS的代码:


var myclock = new clock(); //建立一个名为myclock的新的clock对象.作为引用clock类
_root.onEnterFrame=function()
{
second._rotation = myclock.get_Seconds();//直接使用clock类的秒针转动值方法赋值给MC second的角度
minute._rotation =myclock.get_Minutes();
hour._rotation=myclock.get_Hour();
}


完成.现在可以换上不同的表盘样子.而且不用每个都去更新AS.基本的AS代码已经做为类
文件独立操作了.

这个实例也不难.主要是一个as文件可以解决许多问题.你可以自定义扩展类,自定义类函数
甚至可以做成自定义组件,实现不同的方法与属性.树立OOP的概念,一切都可以做为对象.