Flash5ActionScript教程(三)
二、脚本的规划和调试
织梦内容管理系统
当你为整个动画编写脚本时,脚本的数量和种类可能很大。决定使用哪些动作,怎样有效地构造脚本,脚本应该放在何处,所有这些都要仔细规划和调试,非凡是在动画复杂的情况下更应如此。
在开始编写脚本之前,首先要明确目标和要达到的目的。从写出你希望在动画中发生什么事情开始着手,如下例所示:
我想用Flash创建我的整个网站。
需要询问网站浏览者的姓名,并把这些信息用之于整个网站的消息中。
本网站将设置一个可拖放的导航栏,该导航栏中应有一些链接到本网站各个部分的按钮。
当一个按钮被单击时,新的部分将淡入舞台中心。
一个场景将包含一个联系表单,表单中已经填写了用户的姓名。 织梦好,好织梦
当你明确了自己的设计目标之后,你就可以创建对象,编写控制这些对象的脚本了。要让脚本能够按照你的要求工作,经常需要多次修改、测试和调试。最好的方法是从简单开始,并经常测试你编写的脚本。当你编写的一部分脚本能正常工作时,选择SaveAs(另存为)命令,保存文件的版本(如myMovie01.fla),然后再开始编写余下的部分。当你编写更为复杂的脚本时,这种方法有助于你有效地发现错误,确保你的动作脚本“稳固”。 dedecms.com
三、面向对象的脚本编写
在面向对象的脚本编写中,通过把信息分为组(称为类)来组织信息。可以创建一个类的多个实例(称为对象),用于你的脚本之中。可以使用ActionScript的预定义类,也可以创建自己的类。 本文来自织梦
在创建类时,要定义该类创建的每个对象的所有属性和方法,就像定义现实世界中的对象一样。例如,一个人拥有诸如性别、身高、发色等属性和谈吐、走路、投掷等方法。在本例中,“人”是一个类,每一个人就是一个对象或该类的一个实例。 内容来自dedecms
ActionScript中的对象可以包含数据或作为电影剪辑以图像形式出现在编辑区中。所有的电影剪辑都是预定义类MovieClip的实例。每个电影剪辑实例均包含MovieClip类的所有属性(例如_height、_rotation、_totalframes)和方法(如gotoAndPlay、loadMovie、startDrag)。 内容来自dedecms
要定义一个类,就要定义一个函数(称为构造函数)。预定义类拥有已经定义的构造函数。例如,假如你需要关于动画中自行车骑士的信息,你就要创建一个构造函数Biker,该构造函数拥有time(时间)、distance(距离)属性和rate(速度)方法,给出该骑士的旅行速度: dedecms.com
functionBiker(t,d){
this.time=t;
this.distance=d;
}
functionSpeed(){
returnthis.time/this.distance;
}
Biker.prototype.rate=Speed; dedecms.com
然后,你可以创建该类的一个拷贝—即实例。下面的代码创建对象Biker的实例,称为emma和hamish。
本文来自织梦
emma=newBiker(30,5);
hamish=newBiker(40,5);
实例之间可以互相通讯。对于Biker对象,你可以创建称为shove的方法,让一个骑士推另一个骑士。假如hamish靠得太进,实例emma可能会调用它的shove方法。要把信息传递到方法中,可以使用参数。例如,shove方法可能有两个参数who和howFar。在本例中,emma推hamish10个像素:
emma.shove(hamish,10);
在面向对象的脚本编写中,依据指定的顺序,类可以相互接收属性和方法,这称为继续。你可以利用继续来扩展或重定义一个类的属性和方法。从其它类继续而来的类称为子类,传递属性和方法到另一个类的类称为父类。一个类可以是子类,也可以是父类。
四、MovieClip对象 copyright dedecms
ActionScript的预定义类称为对象。每个对象答应你访问某种类型的信息。例如,Date(日期)对象拥有一些方法(如getFullYear、getMonth),使你能够从系统时钟读取信息。Sound(声音)对象拥有一些方法(如setVolume、setPan),使你能够控制动画中的声音。MovieClip(电影剪辑)对象拥有一些方法,使你能够控制电影剪辑的实例(如play、stop和getURL),获取和设置关于它们的属性的信息(如_alpha、_framesloaded、_visible)。
文章评论
共有位Admini5网友发表了评论 查看完整内容