《网页设计与制作教程》-第十八章讲稿_第1页
《网页设计与制作教程》-第十八章讲稿_第2页
《网页设计与制作教程》-第十八章讲稿_第3页
《网页设计与制作教程》-第十八章讲稿_第4页
《网页设计与制作教程》-第十八章讲稿_第5页
已阅读5页,还剩128页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第十八章ActionScript基础Flash8中的ActionScript语言是一种面向对象的语言。ActionScript是实现Flash交互性的核心技术,可以实现对影片的动态控制。ActionScript通过动作和运算符来控制影片中的对象,通过事件响应机制来处理各种应用。使用ActionScript语言可以制作出交互性非常强的极具吸引力的Flash动画。

18.1ActionScript概述ActionScript是一种与Java语言结构非常相似的一种脚本语言。ActionScript是一种面向对象的程序语言,可以用于普通动画中的播放效果控制,也可以用于开发Flash多媒体课件和网络高级应用程序。ActionScript通过事件处理机制来响应鼠标和键盘事件,实现用户对Flash动画的控制和操作。18.1ActionScript概述ActionScript与其它网络应用开发工具相结合可以制作出交互性很强的Flash动画或网络应用程序。

Flash8提供ActionScript脚本助手,可以非常方便的为动画中的各种对象添加ActionScript程序代码,通过行为面板可以对ActionScript代码进行编辑。18.1ActionScript概述ActionScript实现的Flash交互性动画,主要包含对象、事件和动作三个基本要素。对象就是指行为的执行对象,是指对哪个对象进行操作。事件就是执行行为的条件,是指在满足什么样的条件下执行行为。行为也称动作,是指对象的具体行为动作。18.1ActionScript概述ActionScript脚本根据添加脚本的位置不同将脚本分为帧脚本和元件脚本。帧脚本是指脚本添加在具体的帧上,可以在关键帧和空白关键帧上添加脚本。添加脚本的帧上会显示一个a标识。元件脚本主要有按钮脚本和影片剪辑脚本,按钮脚本是指在制作按钮时添加的脚本,而影片剪辑脚本是制作影片剪辑时添加的脚本。18.1.1ActionScript事件Flash中的ActionScript事件主要有鼠标/键盘事件、帧事件和影片剪辑事件。ActionScript事件的命名格式是:“on”+事件名称,例如,onpress表示按下鼠标事件。

18.1.1ActionScript事件ActionScript鼠标事件是指鼠标点击或移动时发生的事件,主要事件及其含义请见表18-1所示。ActionScript键盘事件主要格式为onKeyPress(“whichkey”),其中“whichkey”表示点击的是哪个按键。

表18-1鼠标事件及其含义鼠标事件名称含义on(press)表示按下鼠标时触发的事件on(release)表示释放鼠标时触发的事件on(rollOver)表示鼠标指向对象时触发的事件on(rollOut)表示鼠标离开对象时触发的事件on(dragOver)表示鼠标执行拖动时触发的事件on(dragOut)表示鼠标结束拖动时触发的事件18.1.2ActionScript对象ActionScript对象是指当发生指定事件时被处理的对象。ActionScript控制的对象主要是Flash动画中的帧或者舞台中各种对象,另外还包括可控制的外部应用程序。

18.1.2ActionScript对象ActionScript对象可以是当前场景中的一个帧,可以控制动画直接跳到场景中指定一帧进行播放。ActionScript可以调用一个外部的动画,并对动画的播放进行控制,这正体现了ActionScript语言面向对象的特点。ActionScript可以调用其它外部的应用程序,比如ActionScript可以制作一个超级链接的效果,当使用鼠标点击一个动画对象时,触发“单击”事件,然后调用浏览器打开一个网页。18.1.3ActionScript动作ActionScript动作是指对对象所做的操作,它包含了常用的动画处理行为,例如,Play、Goto或Stop,分别表示播放帧、跳转到指定帧和停止播放。

18.1.3ActionScript动作Flash中通过动作面板来对动画的ActionScript程序代码进行编辑和管理。选择菜单栏的【窗口】→【动作】,可以在功能面板组中打开动作面板,如图18-1所示。动作面板组分为两种模式,一种是脚本助手模式,一种是专家模式。

图18-1动作面板脚本助手模式18.1.3ActionScript动作使用脚本助手模式时,在动作面板中点击脚本助手按钮,就可以通过脚本助手来添加动作代码。18.1.3ActionScript动作使用专家模式时,再次点击脚本助手按钮,将切换回专家模式。如图18-2所示。

图18-2动作面板专家模式18.1.4ActionScript脚本数据类型ActionScript数据类型是指脚本程序处理的数据类型,主要包括数值型、字符串型、布尔型、对象、影片剪辑和空值等。

18.1.4ActionScript脚本数据类型数值型ActionScript数值型数据是双精度的浮点型数值,可以用于表达高精度的数值运算。ActionScript提供了常用的数学运算函数,可以使用这些函数来构成任意复杂的运算表达式。ActionScript主要使用Math类和Number类来处理数学运算。18.1.4ActionScript脚本数据类型字符串型字符串型是由数字、字母、其它符号组成的文字串。ActionScript中定义一个字符串的格式为:“字符串内容”,用双引号将字符串括起来,例如,“欢迎学习ActionScript”。ActionScript使用“+”符号作为字符串连接符。

18.1.4ActionScript脚本数据类型布尔型

ActionScript中布尔型变量主要用于表达逻辑值,布尔变量只有两个值true和false,也可以用1和0来代替。ActionScript中的布尔型变量主要是用于条件判断,当布尔值为true时表示条件满足,执行指定的行为;当布尔值为false时表示条件不满足,不执行指定的动作。

18.1.4ActionScript脚本数据类型对象型

ActionScript是面向对象的脚本语言,系统提供了大量的对象供系统设计开发人员使用,只要掌握具体对象的使用方法就可以制作出ActionScript动画脚本程序。对象属性和方法的引用格式为“对象﹒属性名”,或者是“对象.方法名()”。18.1.4ActionScript脚本数据类型空值型

空值是指不包含任何数据,用null表示。当一个变量没有获取任何值时表示空值,或者作为函数的返回值,为空时表示没有返回值。18.1.4ActionScript脚本数据类型影片剪辑

影片剪辑类型是定义一个Flash动画中的影片剪辑对象。影片剪辑类型的对象可以是能在Flash中播放的元素。引用的对象是图形类对象,引用方法的格式为:“对象.方法名()”。18.1.5ActionScript变量ActionScript中的变量就是可以改变的量,变量是用于存储数据的容器。在程序运算和执行过程中会产生大量的中间数据,将这些中间数据存储于变量中,因此变量就是存储数据的容器。ActionScript中按变量里存储的数据类型将变量分为数值型变量、字符串型变量、布尔型变量等。18.1.5ActionScript变量定义变量后可以给变量赋一个初始值,称为初始化。ActionScript中的变量类型可以根据所赋值的数值类型不同而发生改变,即给变量赋一个什么类型的值,变量就变为什么类型的变量,这样使ActionScript语言编程非常灵活。

18.1.5ActionScript变量变量名定义规则

ActionScript中变量名定义的规则如下:

变量名必须只能包含数字、字母和下划线,并且只能以字母开头。例如,a_name,str_name1,str_1都是合法的变量名。

ActionScript中的变量名区分大小写,例如,str_name和STR_name是两个不相同的变量。

变量名不能是ActionScript语言中的关键子,例如,不可以定义变量名为true、false、if、else等关键字。

在变量的作用域内,不允许变量名重复定义。

18.1.5ActionScript变量变量的数据类型

ActionScript变量的类型可以改变,给变量赋一个什么类型的值,变量就变为什么类型的变量。

18.1.5ActionScript变量变量的作用域

变量的作用域是指ActionScript程序中能够使用该变量的范围。ActionScript中变量的作用域分为全局变量、局部变量和时间轴变量。全局变量是指变量在整个Flash动画中都是可以引用的变量。全局变量主要用于存储整个动画都需要使用的数据,可用于在各元件中传递数据。18.1.5ActionScript变量变量的作用域

局部变量是在一个程序块中存储数据的变量,作用范围仅限于当前的程序块。局部变量主要用于存储一个元件内的数据。由于作用范围的局部性,可以在不同元件里设置相同的局部变量名称,而不会相互影响。时间轴变量可以在整个时间轴上的脚本中使用,可以在多个帧中的脚本中传输数据。18.1.5ActionScript变量声明变量

ActionScript语言严格规定,在使用变量之前一定要声明,如果使用一个未声明的变量将会出现错误。

18.1.6ActionScript运算符ActionScript运算符是用于动画中的各种类型的数据进行操作和运算的符号。ActionScrip运算符主要包括算术运算符、比较运算符、逻辑运算符、字符串运算符、位运算符和赋值运算符。18.1.6ActionScript运算符算术运算符

算术运算符主要用于ActionScript程序的数值运算,主要算术运算符请见表18-2所示。

表18-2算术运算符运算符数学运算+加法运算-减法运算*乘法运算/除法运算%求余运算++自增运算--自减运算18.1.6ActionScript运算符比较运算符

比较运算符又称关系运算符,主要用于ActionScript程序中数据的比较运算,比较运算符构成的表达式的返回值为逻辑值。主要比较运算符请见表18-3所示。

表18-3比较运算符运算符数学运算>大于<小于>=大于或等于<=小于或等于==等于!=不等于18.1.6ActionScript运算符赋值运算符

赋值运算符是给程序中的变量、数组元素或对象的属性赋值。主要赋值运算符请见表18-4所示。

表18-4赋值运算符

运算符数学运算=赋值+=相加并赋值-=相减并赋值*=相乘并赋值/=相除并赋值%=求余并赋值18.1.6ActionScript运算符逻辑运算符

逻辑运算符主要用于程序的逻辑运算,参与运算的两个数据必须是两个逻辑值,逻辑运算的结果也是逻辑值。主要逻辑运算符请见表18-5所示。

表18-5逻辑运算符运算符数学运算&&逻辑与||逻辑或!逻辑非18.2ActionScript选择控制语句ActionScript通过选择控制语句来控制程序选择性的执行程序模块,根据条件的判断来决定执行哪部分程序模块。ActionScript主要提供了If选择控制语句和switch选择控制语句。18.2.1If语句If语句是一种常用的选择控制语句,根据选择条件的多少将If条件语句分为三种:If条件语句,If…else条件语句和If…elseif条件语句。

18.2.1If语句If选择语句

ActionScript中的If选择语句主要用于一种选择条件下的程序设计模块。当If语句满足条件时,执行If语句后面的语句组,否则执行If语句的下一条语句。If选择语句的格式为:

If(条件表达式)

{语句组;}

如果条件表达式为真,执行语句组,否则执行If语句的后面一条语句。当If语句组中只有一条语句时,大括号可以省略。18.2.1If语句例如下面程序段所示:

num=89;

If(num<=100)

Trace(“num小于等于100”);

18.2.1If语句If…else选择语句

ActionScript中的If…else选择语句主要用于两种选择条件下的程序设计模块。当If语句满足条件时,执行If语句后面的语句组,否则,执行else语句后面的语句组。If…else选择语句的格式为:

if(条件表达式)

{语句组1;}

else

{语句组2;}

当条件表达式为真时,执行语句组1的内容,否则,执行语句组2的内容。18.2.1If语句例如下面的程序段所示:

num=89;

if(num>80)

trace("num大于80!");

else

trace("num小于等于80!");

18.2.1If语句If…elseif选择语句

ActionScript中的If…elseif选择语句主要用于选择条件多于两个选择的时候。If…elseif选择语句的格式为:

if(条件1)

{语句组1;}

elseif(条件2)

{语句组2;}

elseif(条件3)

{语句组3;}

……

elseif(条件n)

{语句组n;}

else

{语句组n+1;}

18.2.1If语句当If语句条件1满足时,执行语句组1,否则,对下一个elseif语句条件2进行判断,如果满足条件,执行elseif语句后面的语句组2,否则,继续向下判断条件是否满足,如果都不满足,执行else语句后面的语句组。18.2.1If语句num=89;

if(num<60)

trace(“成绩不及格”);

elseif(num<70)

trace(“成绩合格”);

elseif(num<80)

trace(“成绩中等”);

elseif(num<90)

trace(“成绩良好”);

else

trace(“成绩优秀”);

在动作面板的代码编辑窗口编辑上述代码,程序执行结果为“成绩良好”,如图18-3所示

图18-3动作面板与输出窗口18.2.2Switch选择控制语句Switch语句是一种多条件选择语句,根据计算switch语句表达式的值来进行选择。Switch语句的格式为:

switch(表达式)

case数值1:

语句组1;

break;

case数值2:

语句组2;

break;

case数值3:

语句组3;

break;

……

default:

语句组n;

break;

18.2.2Switch选择控制语句当表达式的值与数值1相同时,执行语句组1,当表达式的值等于数值2时,执行语句组2,当表达式的值与所有数值都不同时,执行语句组n。例如下面代码段:

Choice=3;

switch(Choice)

{

case1:

trace("你选择的是1。");

break;

case2:

trace("你选择的是2。");

break;

case3:

trace("你选择的是3。");

break;

case4:

trace("你选择的是4。");

break;

default:

trace("选择不正确。");

break;

}

18.3循环语句ActionScript循环语句用于控制反复执行某一模块代码,可以控制重复执行的次数和重复执行的条件。ActionScript循环语句主要有for循环语句、do…while循环语句。18.3.1For循环语句ActionScript中的for循环语句是程序设计过程中经常使用的循环语句。通过控制循环变量来控制循环体的执行次数。For循环的格式如下:

For(表达式1;表达式2;表达式3)

{语句组;}

18.3.1For循环语句表达式1用于初始化变量,主要用于for循环的循环变量的初始化。表达式2是一个关系表达式,主要用于控制for循环的循环条件。表达式3对循环变量进行控制,主要用于循环变量的自增和自减运算。18.3.1For循环语句For循环执行时,首先运算表达式1,对循环变量进行初始化,然后判断表达式2中的条件是否满足,如果不满足结束循环,否则,执行循环体。执行一次循环体后,对表达式3进行运算,然后再对表达式2进行计算,并判断循环条件是否满足,如果不满足跳出循环,否则继续执行下一次循环,直到不能满足循环表达式2为止。18.3.1For循环语句For循环的代码段如下:

vari:Number;

for(i=0;i<8;i++)

{

trace(i);

}

代码执行后输出:0到7,并且每个数各占一行。18.3.2For…in循环语句ActionScript中的for…in循环用于循环输出对象的属性或者数组的元素值,for…in语句首先判断对象中属性的个数或数组中元素的个数,然后将对象的属性或数组的元素依次输出。18.3.2For…in循环语句for…in循环的格式如下:

For(表达式1)in(表达式2)

{语句组;}

表达式1定义一个变量用于存储从对象获取的属性,表达式2是对象或数组名称。执行for..in循环时,依次从表达式2中对象获取属性值并赋值给表达式1的变量,然后在循环体内的语句组中对表达式1的变量进行处理并输出。18.3.2For…in循环语句For…in循环的代码段如下:

vari:String;

vardataObj:Object={a:60,b:80,c:100};

for(iindataObj)

{

trace(i+":"+dataObj[i]);

}

18.3.2For…in循环语句代码中变量i依次获取对象dataObj中的属性,并依次将其输出,结果如图18-4所示。

图18-4动作面板与输出窗口18.3.3While循环ActionScript中While循环与for循环的功能一致,通过控制循环条件实现对循环的有效控制。While循环的格式为:

while(表达式1)

{语句组;}

18.3.3While循环表达式1是循环控制表达式,While循环执行时,先判断表达式1是否满足,如果不满足结束循环语句,否则执行循环体,执行一次循环后对循环表达式1进行判断,如果满足继续执行,直到不能满足循环控制表达式1的条件为止。18.3.3While循环While循环代码段如下:

vari:Number=0;

while(i<8)

{

trace(i);

i++;

}

18.3.3While循环While循环必须在循环体内对循环变量进行自增或自减运输,才能保证循环的正确执行。结果如图18-5所示。

图18-5动作面板与输出窗口18.3.4do…while循环ActionScript中的do…while循环是while循环的一种,与whlie循环不同的是,不管什么条件下,它都会至少执行一次循环体中的语句组。18.3.4do…while循环do…while循环的格式为:

do

{

语句组;

}while(表达式1)

do…while循环执行时,首先执行一次循环体中的语句组,然后对表达式1进行判断,如果满足条件就继续下一次循环,否则退出循环。18.3.4do…while循环do…while循环代码段如下:

varnum:Number=8;

vari:Number=0;

do

{

trace(i);

i++;

}while(i<num)

18.3.4do…while循环do…while循环也必须在循环体内对循环控制变量进行自增运算和自减运算,输出窗口如图18-6所示。

图18-6动作面板与输出窗口18.4ActionScript函数ActionScript中函数是能够被重复使用的执行特定功能的程序块。可以将需要处理的各种类型的数据以参数的形式传给函数,函数按照特定的操作对获取到的数据进行处理,并将处理结果返回给调用处。每个函数都具有特定的功能,例如,有的函数可以处理数据的加法运算,有的函数用于数据的排序。18.4ActionScript函数函数按照来源可以分为自定义函数和内置函数。自定义函数就是函数由设计者根据程序设计的需要定义的函数,使用自定义函数提高了程序设计的灵活性。内置函数是由ActionScript脚本语言定义的供设计者直接使用,使用内置函数提高了程序设计的速度。在Flash的动作面板中可以看到Flash提供的所有内置函数,打开动作面板选择“全局函数”,如图18-7所示。

图18-7动作面板中的全局函数

18.4.1自定义函数ActionScript设计者可以根据程序设计需要来定义一个自定义函数满足程序设计的特殊要求。定义函数时使用关键字function来定义。自定义函数的格式为:

Function函数名(参数1,参数2,…,参数n)

{

函数体内语句组;

Return表达式1;

}

18.4.1自定义函数现在定义一个自定义函数来实现两个数的加法运算,并将两个数的和作为函数返回值返回。自定义函数代码段如下:

//自定义函数Add_Math()

functionAdd_Math(number1,number2)

{

varsum:Number=0;

sum=number1+number2;

returnsum;

}

//调用Add_Math()

Add_result=Add_Math(2,6);

trace(Add_result);//

18.4.1自定义函数上述代码段自定义了一个函数,函数名为“Add_Math”,函数参数表中有两个参数,函数功能是实现两个数的加法运算,并将运算结果返回给函数调用处。函数的输出如图18-8所示。

图18-8函数的输出窗口18.4.2内置函数ActionScript语言提供了大量的内置函数,主要有时间轴控制函数、浏览器/网络函数、数学函数、影片剪辑函数、转换函数和其它函数。18.4.2内置函数时间轴控制函数

打开动作面板,时间轴控制函数如图18-9所示,当双击具体时间轴控制函数时,在代码窗口中显示该函数,并且弹出函数的帮助信息。主要时间轴控制函数及其功能请见表18-6所示。

图18-9时间轴控制函数使用表18-6时间轴控制函数及其功能函数名称函数功能gotoAndPlay()转到指定帧并播放gotoAndStop()转到指定帧并停止nextFrame()转到下一帧nextScene()转到下一个场景play()开始播放影片prevFrame()转到上一帧stop()停止播放影片stopAllSounds()停止播放所有声音18.4.2内置函数时间轴控制函数使用时可以与鼠标事件结合使用,当触发特定鼠标事件时调用时间轴函数。例如下面代码段:

on(press){

gotoAndPlay(18);

}

程序段的功能是:当用户单击按钮时,触发on(press)事件,调用gotoAndPlay函数,将播放头跳转到指定场景的帧,并从此帧开始播放。18.4.2内置函数函数gotoAndPlay的格式为:

gotoAndPlay(场景,帧);

场景:指定播放头跳转到的场景名称。

帧:指定播放头跳转到场景的播放帧的序号或标签。

18.4.2内置函数浏览器/网络函数

浏览器/网络函数主要是处理影片剪辑和浏览器应用的函数,当双击具体浏览器/网络函数时,在代码窗口中显示该函数,并且弹出函数的帮助信息,如图18-10所示。主要浏览器/网络函数及其功能请见表18-7所示。

图18-10动作面板的浏览器/网络函数表18-7浏览器/网络函数函数名称函数功能loadMovie()将图片或影片剪辑加入到其它影片剪辑getURL()链接到指定的URLloadMovieNum()将图片或影片剪辑加入到图层中loadVariables()从URL加载变量loadVariablesNum()从URL加载变量到图层unloadMovie()卸载用loadMovie()加载的影片剪辑unloadMovieNum()卸载用loadMovieNum()加载的影片剪辑18.4.2内置函数时间轴控制函数使用时可以与鼠标事件结合使用,当触发特定鼠标事件时调用时间轴函数。例如下面代码段:

on(press){

loadMovie(“mc.swf”,2);

}

程序段的功能是:当用户单击按钮时,触发on(press)事件,调用loadMovie函数,加载外部影片到当前场景中的图层2中。18.4.2内置函数函数loadMovie主要用于向图层或者是影片剪辑中添加JPEG、GIF、SWF、PNG格式的对象。可以将其设置为帧动作,当动画执行到某一帧时执行loadMovie函数。也可以响应特定事件来加载,当点击按钮时触发的on(press)事件时执行loadMovie函数。18.4.2内置函数loadMovie函数的格式为:

loadMovie(URL,目标,方法);

URL:表示将要嵌入JPEG、GIF、SWF、PNG格式的对象路径。

目标:将嵌入的对象放置的位置,是图层或者是影片剪辑。

方法:变量传输的方式,有POST或GET(可不填)。18.5ActionScript应用影片剪辑是Flash动画中最重要的一种元件,ActionScript的最主要的功能就是通过对影片剪辑的操作和控制,实现动画的交互性或者是实现动画特效。因此,具有交互性和复杂影视特效的动画主要是应用ActionScript技术对影片剪辑的控制实现的。18.5ActionScript应用可以使用ActionScript控制影片剪辑的播放进度和属性,也可以给特定的影片剪辑加入事件处理函数,来控制主时间轴和其它影片剪辑。

18.5.1控制影片剪辑的播放动作Flash动画设计过程中,为了实现动画中对象重复使用,避免重复制作舞台对象,将主要的舞台对象都创建为元件,并将元件存放于元件库中。Flash元件包括图形元件、按钮元件、影片剪辑元件。18.5.1控制影片剪辑的播放动作在动画设计过程中,需要重复构建一个对象时,只需要从元件库中将所需的元件拖到舞台中即可,这时在舞台中就创建了一个元件的实例对象,实例对象是原来元件的复制品,为了在动画执行过程中调用和控制该实例对象,需要给实例命名,选中实例对象,然后打开属性面板,在“实例名称”对话框中填入实例名称。为保证控制的准确性,实例名称在整个动画场景中是唯一的。

18.5.1控制影片剪辑的播放动作Flash实现交互性主要是通过事件响应机制来实现的,当点击鼠标、键盘或者影片剪辑加载时都会触发相应的事件,使用ActionScript设置一个事件处理函数,这样就可以接收到事件后并做相应的处理来响应具体事件,就实现了动画的交互性。

18.5.1控制影片剪辑的播放动作时间轴控制动画

Flash中的ActionScript语言提供了时间轴控制功能的函数,通过时间轴控制函数来控制动画的播放。【例18-1】制作一个控制时间轴播放的动画,在场景中建立一个基本动画,通过四个按钮来控制动画的播放。动画制作过程如下:

18.5.1控制影片剪辑的播放动作新建一个Flash文档,选择菜单栏的【文件】→【新建】→【Flash文档】,建立一个新的文档。并在舞台上点击鼠标,在属性面板上设置舞台大小为600px×600px。18.5.1控制影片剪辑的播放动作导入“企鹅”位图,选择菜单栏的【文件】→【导入】→【导入到库】,选择企鹅位图,点击确定。打开Flash元件库,点击菜单栏的【窗口】→【库】,在功能面板组中显示库面板,在库中可以看到“企鹅”位图元件。

18.5.1控制影片剪辑的播放动作在图层面板中将图层1的名称改为“企鹅”,并选中第1帧,在库中选中企鹅并将其拖曳到舞台的左侧。选中“企鹅”图层的第60帧,右键点击“插入关键帧”,并将舞台中的企鹅对象移动到舞台的右侧。点击“企鹅”图层中第1帧到第60帧之间的任意一帧,右键点击“创建补间动画”。一个移动的基本动画创建完毕。

18.5.1控制影片剪辑的播放动作选择图层面板中的添加图层按钮,建立一个新的图层,并将图层命名为“按钮”,选中新图层的第1帧,然后向舞台中添加四个按钮。选择菜单栏中的【窗口】→【公用库】→【按钮】,在库中选择所需按钮,并且将它们拖入到舞台中,如图18-11所示。

图18-11舞台中添加按钮18.5.1控制影片剪辑的播放动作给每个按钮分配不同的功能,绿色按钮1用于控制动画播放,红色按钮2用于控制动画停止,蓝色按钮3实现跳转并播放的功能,橘黄色按钮4实现跳转并停止的功能。

打开动作面板,选择菜单栏的【窗口】→【动作】,动作面板会显示在功能面板组中。18.5.1控制影片剪辑的播放动作选中按钮图层,在舞台中选中按钮1,在动作面板中的代码窗口中输入代码:

“on(release){play();}”。

选中按钮图层,在舞台中选中按钮2,在动作面板中的代码窗口中输入代码:

“on(release){stop();}”。

选中按钮图层,在舞台中选中按钮3,在动作面板中的代码窗口中输入代码:

“on(release){gotoAndPlay(28);}”。

选中按钮图层,在舞台中选中按钮4,在动作面板中的代码窗口中输入代码:

“on(release){gotoAndStop(8);}”。

18.5.2控制影片属性Flash中的ActionScript语言是面向对象的程序语言,将常用的Flash动画设计元素都以对象的形式进行管理和控制。在交互性动画设计过程中,ActionScript通过控制影片剪辑的属性来改变影片状态,以实现特定的动态效果。影片剪辑提供了大量的属性,例如,影片剪辑的宽、高、角度、屏幕坐标等。18.5.2控制影片属性在动画设计过程中,将组成动画的元件设计为影片剪辑存储于元件库中,当使用影片剪辑时,将所需影片剪辑拖曳到舞台创建一个与影片剪辑相同的影片剪辑实例,并且可以根据影片剪辑实例的具体功能对其进行命名。

18.5.2控制影片属性控制影片属性动画

ActionScript提供了对影片剪辑操作的函数,可以对影片剪辑进行各种操作,并对影片剪辑的属性进行修改。ActionScript通过修改影片剪辑的属性来改变其特征,实现动画特效。18.5.2控制影片属性【例18-2】创建一个控制影片剪辑属性的例子,在主场景内设计三个按钮,分别用于修改影片剪辑的不同属性,动画制作过程如下:

新建一个Flash文档,选择菜单栏的【文件】→【新建】→【Flash文档】,建立一个新的文档。并在舞台上点击鼠标,在属性面板上设置舞台大小为600px×600px。

18.5.2控制影片属性导入“企鹅”位图,选择菜单栏的【文件】→【导入】→【导入到库】,选择企鹅位图,点击确定。打开Flash元件库,点击菜单栏的【窗口】→【库】,在功能面板组中显示库面板,在库中可以看到“企鹅”位图元件。18.5.2控制影片属性制作影片剪辑,打开菜单栏的【插入】→【新元件】,弹出新建元件对话框,如图18-12所示。新元件取名为“企鹅”,类型选择“影片剪辑”。进入新建元件的编辑场景,在图层1中选择第1帧,然后将元件库中的企鹅拖曳到舞台中央,建立一个企鹅实例。然后点击场景1,退出企鹅影片剪辑元件的编辑场景,回到主场景。

图18-12创建影片剪辑18.5.2控制影片属性选择场景1的图层1的第1帧,然后将刚建立的企鹅影片剪辑元件从元件库中拖曳到舞台,建立一个实例。打开属性面板并且为企鹅影片剪辑实例设置一个实例名,实例命名为object1。ActionScript脚本就通过此实例名来调用企鹅影片剪辑实例。18.5.2控制影片属性创建按钮,打开菜单栏的【窗口】→【公用库】→【按钮】,选择三个按钮,并将它们拖曳到舞台中建立相应的实例,如图18-13所示。

分别给三个按钮定义动作。选择菜单栏的【窗口】→【动作】,在功能面板组中打开动作面板。图18-13创建三个按钮实例18.5.2控制影片属性在舞台上选中“enter”按钮,然后在动作面板中的代码窗口中输入代码:

on(release){

_root.object1._rotation=_root.object1._rotation+10;

}

在舞台上选中“左方向”按钮,然后在动作面板中的代码窗口中输入代码:

on(release){

_root.object1._x=_root.object1._x-10;

}

18.5.2控制影片属性在舞台上选中“右方向”按钮,然后在动作面板中的代码窗口中输入代码:

on(release){

_root.object1._x=_root.object1._x+10;

}

18.5.2控制影片属性测试影片。当点击第一个按钮“enter”的时候,企鹅开始顺时针方向翻转,每次旋转10度。当点击“左方向”按钮时,企鹅向左移动10px(像素)。当点击“右方向”按钮时,企鹅向右移动10px(像素)。

上例动画通过控制影片剪辑的属性实现企鹅旋转和移动的效果,当点击“enter”按钮时对企鹅影片剪辑的_rotation属性进行修改,将旋转角度增加10度。当点击“左方向”按钮时,对企鹅影片剪辑的x轴坐标进行修改,将x坐标减10px,形成左移效果。当点击“右方向”按钮时,对企鹅影片剪辑的x轴坐标加10px,形成右移效果。18.6Flash与Dreamweaver结合使用Flash中的ActionScript语言提供的浏览器/网络函数可以实现Flash动画与浏览器之间的信息通信。可以控制各种网页对象在浏览器中指定窗口加载和卸载。在设计与浏览器交互信息的动画时,需要将Flash软件和Dreamweaver软件结合起来。

18.6.1Flash动画实现链接使用ActionScript语言提供的浏览器/网络函数getURL可以实现页面链接的功能。【例18-3】制作一个Flash动画实例,可以控制框架页面加载网页,具体实现过程如下:

18.6.1Flash动画实现链接使用Dreamweaver创建一个框架集页面,在Dreamweaver中选择菜单栏的【文件】→【新建】,弹出新建文档对话框,选择类别“框架集”,选择如图18-14所示的框架结构。

图18-14框架集结构18.6.1Flash动画实现链接生成的框架集页面的主要代码如下:

<framesetrows="138,*"bordercolor="#0000FF"frameborder="1"border="3>

<framesrc="top.html"name="topFrame"/>

<framesetcols="300,*"bordercolor="#0000FF"frameborder="1"border="3">

<framesrc="left.html"name="leftFrame"/>

<framesrc="main.html"name="mainFrame"/>

</frameset>

</frameset>

18.6.1Flash动画实现链接使用Flash制作导航栏。新建一个Flash文档,在Flash菜单栏中选择【文件】

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论