Flash 中的ActionScript实例 下载本文

Break Case Continue Default Delete Else For Function If In instanceof new return switch this typeof var void while with 知识点3:ActionScript相关术语 1. 实例

实例是属于某些类的对象,类的对象处于库中时称为元件,应用于场景中时则为实例。每个类的实例都包含该类的所有属性和方法。例如,影片剪辑的实例是MovieClip类的实例,因此可以将MovieClip类的方法或属性用户任何影片剪辑实例。

2. 实例名

实例名是在脚本中用于指向影片中实例的唯一名称。为实例指定实例名称的方法有两种。

(1)当实例位于舞台上时,可以选中该实例,然后在“属性”面板的“实例名称”文本框中输入该实例的名称。

(2)使用脚本指令创建一个实例,并在创建该实例时为其分配一个实例名称。(在第1帧添加动作)例如:

this.createEmptyMovieClip(\pic_mc.loadMovie(\ //\图片的路径\

3. 数据类型

(1)数字(Number):双精度浮点数,可以表示整数、无符号整数以及浮点数。可以通过使用加、减、乘、除、求模、递加、递减等算术运算符来处理数据,也可以使用脚本内置的math和number类的方法来处理数据。Math.sqrt(25);

(2)字符串(String):var my_string:String = “hello”;可以通过“+”连接两个字符串。 (3)布尔值

(4)影片剪辑(MovieClip)

(5)对象(Object):对象是用于描述对象特性的属性的集合。每个属性都有名称和值。 (6)空值(Null)

(7)未定义(undefined) (8)无值(Void):用于在函数定义中指示函数不返回值。 4. 变量

(1)全局变量:在flash文档中的所有时间轴和作用域均有效。声明全局变量需要在变量名前加_global。如:_global.myname = “xiaoyang”。

(2)时间轴变量:可用于该时间轴上的任何脚本。声明时间轴变量可以使用var语句,在时间轴的任一帧上初始化变量,改变量可以用户该帧后的所有帧。

(3)局部变量:在函数体内用var定义变量,只能作用于该函数体内。 5. 运算符 (1)数值运算符 (2)比较运算符 (3)赋值运算符 (4)逻辑运算符

6. 表达式:flash可以计算并返回值的任何语句,有运算符和操作数组成。

7. 类:类用于定义一类对象,并对该类对象的属性和方法进行描述。类的属性和方法

统称为类的成员。若要使用类的属性和方法通常要先创建该类的一个实例。可以通

5

过new运算符调用该类的构造函数来创建类的实例。构造函数与类通常具有相同的名称。如:

var my_sound:Sound = new Sound( ); flash大约包含65各顶级类和内置类。

8. 函数:函数是可以重用的代码块,可以向其传递参数并能返回值。 9. 方法:属于一类的函数称作该类的方法。

3.2交互动画技术1—影片和影片剪辑播放控制

知识点:.时间轴控制函数

时间轴控制函数主要用来控制帧和场景的播放、停止及跳转等,这类函数包括如下几种:

Play();stop();gotoAndPlay();gotoAndStop();nextFrame();prevFrame();nextScene();prevScene();stopAllSounds();

实例1: 利用按钮分别控制场景和元件中动画的运动

3.3文本交互

知识点:文本的类型

1.静态文本 2.动态文本 3.输入文本 实例:填空题

??????

步骤1:新建文件,保存为“填空题.fla”

步骤2:在舞台上用文字工具输入静态文字“1+1=”

步骤3:在舞台上用文字工具添加输入文本,在“属性”面板设置“显示边框”、“变量名为answer”。

步骤4:在舞台上添加动态文本,不显示边框,变量名为feedback。

步骤5:选中第1帧,给帧添加动作: answer=\

feedback=\

步骤5:制作一个按钮元件元件名为“确定”

步骤6:从“库”中把“确定”按钮拖到舞台,给按钮添加动作: on(release) {

if ( answer==\

feedback=\答案正确!\ }

else if (answer= =\

feedback=\请输入答案!\ }

6

else {

feedback=\您的答案错误!\}

步骤7:测试、保存影片。

注意:条件语句、赋值语句、相等比较语句

3.4影片剪辑控制

知识点1:影片剪辑的播放控制 1.控制影片剪辑播放的主要方法:(MovieClip类的方法) 2.实例:用外部按钮控制影片剪辑实例的播放、停止、跳转等。 知识点2:影片剪辑的属性控制 1.影片剪辑的主要属性 隐藏、大小、位置、旋转 on(release){

box._visible=false;} on(release){ box._xscale*=1.1;} on(release){

box._x+=5;} on(release){

box._rotation+=5;}

2.影片剪辑属性调用方法:影片剪辑实例名.属性 实例1:属性控制.fla

知识点3:影片剪辑的拖动 .控制方法:startDrag();stopDrag( )

on (press) {

startDrag(my_mc); //my_mc为影片剪辑在舞台中的实例名 }

on (release) { stopDrag(); }

知识点4:键盘控制影片剪辑

1.onClipEvent( )事件处理函数也可以使用影片剪辑事件。用事件处理函数,其用法为: onClipEvent(影片剪辑事件){ //事件发生时需要执行的动作 }

用影片剪辑对象事件: 对象.事件。

影片剪辑对象的事件有: Load:加载。 Unload:卸载;

7

enterFrame:进入帧

mouseMove:移动鼠标 mouseDown:按下鼠标 mouseUp:释放鼠标

keyDown、keyUp:按下某个键,释放某个键

2.按键检测的方法(Key类的方法)

(1)Key.isDown( )是Key类的一个方法。用法如下:

Key.isDown(code);

该方法用于返回一个布尔值,如果按下keycode中指定的键,则返回true;否则返回false; my_car.onEnterFrame= function( ) { if(Key.isDown(Key.RIGHT)) { this._x +=10;

}else if (Key.isDown(Key.LEFT)) { This._x-=10;

} }

(2)Key类的属性

Key类的属性是一些常数,这些常数表示用户控制应用程序的常用键。(UP、DOWN、LEFT、RIGHT、SPACE、BACKSPACE、ENTER、ESCAPE、PGDN、CONTROL等)

知识点5:影片剪辑的复制 1. duplicateMovieClip 函数

duplicateMovieClip(target:MovieClip, newname:String, depth:Number) : Void

当 SWF 文件正在播放时,创建一个影片剪辑的实例。无论播放头在原始影片剪辑中处于什么位置,在重复的影片剪辑中,播放头始终从第 1 帧开始。原始影片剪辑中的变量不会复制到重复的影片剪辑中。使用 removeMovieClip() 函数或方法可以删除用 duplicateMovieClip() 创建的影片剪辑实例。

参数 target:Object - 要复制的影片剪辑的目标路径。此参数可以是一个字符串(例如 \),也可以是对影片剪辑实例的直接引用(例如 my_mc)。

newname:String - 所复制的影片剪辑的唯一标识符。 depth:Number - 所复制的影片剪辑的唯一深度级别。深度级别是所复制的影片剪辑的堆叠顺序。这种堆叠顺序很像时间轴中图层的堆叠顺序;较低深度级别的影片剪辑隐藏在较高堆叠顺序的剪辑之下。必须为每个所复制的影片剪辑分配一个唯一的深度级别,以防止它替换已占用深度上的 SWF 文件。

示例

在下面的示例中,将创建一个名为 img_mc 的新影片剪辑实例。将一个图像加载到该影片剪辑中,然后复制 img_mc 剪辑。所复制的剪辑名为 newImg_mc,这个新剪辑将移至舞台上,因此它不会与原始剪辑重叠,并且将同一图像加载到第二个剪辑中。

实例2:

on (release) {

duplicateMovieClip(boy, \boy1._x = 200; }

8