您好,欢迎访问三七文档
FlashCS4创意动漫制作基础第五章Flash动作脚本Flash主要内容ActionScript3.0概述1认识动作面板2给Flash文件添加动作脚本3使用动作脚本控制“影片剪辑”4影片剪辑的属性调整与路径5按钮控制6FlashActionScript3.0概述要点导读1.ActionScript的概念2.ActionScript3.0的语法规则3.ActionScript3.0与2.0区别FlashActionScript3.0概述ActionScript是Flash的脚本语言,与JavaScript在网页制作中起得作用相似,它在Flash内容和应用程序中实现交互性、数据处理以及其他功能。新出的ActionScript3.0使用面对对象编程,增加更强的报错能力,指定类型也更明确。ActionScript3.0由FlashPlayer中的ActionScript虚拟机(AVM2)来执行的,它的代码通常被编译器编译成“字节码格式”(一种由计算机编写且能够为计算机所理解的编程语言),随后字节码被嵌入到SWF文件中,SWF文件由运行时环境FlashPlayer执行。Flash面向对象类与对象FlashActionScript3.0概述ActionScript3.0语法规则在ActionScript3.0中,一个变量实际上包含三个不同部分:变量名,可以存储在变量中的数据类型,存储在计算机内存中的实际值。对变量来说,数据类型也非常重要。在ActionScript3.0中创建变量时,应指定该变量将保存的数据类型;此后,程序只能在该变量中存储此类型的数据,可以使用与该变量的数据类型关联的特定特性来处理值。在ActionScript中,要创建一个变量或声明变量,应使用var语句:“varvalue1:Number;”。在本例中,指示计算机创建一个名为value的变量,该变量仅存储Number(数值)的数据。用户还可以立即在变量中存储一个值:“varvalue2:Number=17;”。FlashActionScript3.0概述ActionScript3.0语法规则在ActionScript中,有很多数据类型可以用作变量的数据类型。其中,基本数据类型有:•String:一个文本值,例如,一个名称或书中某一章的文字;•Number:任何数值,包括有小数部分或没有小数部分的值;•Int:一个整数(不带小数部分的整数);•Uint:一个“无符号”整数,即不能为负数的整数;•Boolean:一个true或false值,例如开关是否开启或两个值是否相等。FlashActionScript3.0概述ActionScript3.0语法规则ActionScript是一种面向对象的编程语言。对象是ActionScript中一个非常重要的概念。事实上,如果用户在Flash中处理过元件,那么用户已经处理过对象了。假设用户已定义了一个影片剪辑元件(一幅圆的图画),并且将它的一个副本放在舞台上。从严格意义上来说,该影片剪辑元件也是ActionScript中的一个对象,即MovieClip类的一个实例。用户可以修改该影片剪辑的不同特征。例如,当选中该影片剪辑时,用户可以在“属性”检查器中更改许多值,例如,它的x坐标、宽度,进行各种颜色调整(例如,更改它的alpha透明度),或对它应用各种滤镜。还可以使用其它Flash工具进行更多更改,例如,使用“任意变形”工具旋转该对象。在Flash创作环境中修改一个影片剪辑元件时所做的更改,同样可在ActionScript中通过代码来实现。FlashActionScript3.0概述ActionScript3.0语法规则“运算符”是用于执行计算的特殊符号。运算符主要用于数学运算,也可以用于值的比较。通常,运算符使用一个或多个值并“算出”一个结果。例如:加法运算符(+)将两个值相加,结果是一个数字:varsum:Number=43+62;乘法运算符(*)将一个值与另一个值相乘,结果是一个数字:varresult:Number=5*6*7;等于运算符(==)比较两个值,看它们是否相等FlashActionScript3.0概述ActionScript3.0语法规则在编写ActionScript时,用户通常会希望给自己留一些注释,这些注释可能解释某些代码行如何工作或者为什么做出特定的选择。“代码注释”是一个工具,用于编写计算机应在代码中忽略的文本。ActionScript包括两种注释。单行注释:在一行中的任意位置放置两个斜杠来指定单行注释。计算机将忽略斜杠后直到该行末尾的所有内容。varjohnieAge:Number=10;//默认情况下,将johnieAge设置为10。多行注释:多行注释包括一个开始注释标记(/*)、注释内容和一个结束注释标记(*/)。无论注释跨越多少行,计算机都将忽略开始标记与结束标记之间的所有内容。注释的另一种常见用法是临时禁用一行或多行代码。例如,如果用户要测试执行某操作的其它方法,或要查明为什么某些ActionScript代码没有按用户期望的方式工作。Flash实例操作(建立一个对象)varperson:Object=newObject();person.sex=female;person.age=21;person.birthday=newDate(1970,0,1);trace(person.sex);Flash简单运算varnum1:int=2;varnum2:int=3;varsum=num1+num2;trace(sum);FlashActionScript3.0概述ActionScript3.0与2.0区别本书中主要讲解ActionScript3.0,可能有部分同学已经有2.0基础,同时网络上也有大量的基于2.0的Flash动画,应此有必要在此将ActionScript3.0和2.0进行一番比较,以使大家对2.0亦有一些了解。1、类划分的更明确。在2.0时代,无论是加载外部图像、动画和绘图,都可以使用MovieClip,然而引用的大量的MovieClip,却只使用了其中部分功能,造成性能的浪费。而在3.0中,把这些功能分开,例如通过Loader对象来加载外部的jpg、gng或SWF文件;通过MovieClip对象的graphfics属性moveTo方法来绘制图形。2、统一事件。2.0中可以使用‘on’、‘addListener’、‘addEventListener’等写法来赋予对象各种事件,执行方法的多样,很容易让人迷糊。3.0则全部使用addEventListener()函数来侦听特地发送者发出的事件。FlashActionScript3.0概述ActionScript3.0与2.0区别3、内存工作方式更有效率。2.0的显示对象,例如MovieClip、Button、文字、色块、位图等等,一旦被实例化后,就会立即出现在Flash的舞台中。而3.0的显示对象被实例化后,不会马上出现,而是等到需要的时候,通过addChild()或DisplayObjectContainer加入,这样可以减少内存资源的消耗,使动画运行的更流畅。4、强制性声明变量。2.0可以不使用关键词声明,直接使用变量,语法的规范性不强。而3.0一定要通过关键词var声明变量,同时还引入了const来声明常量。常量一般用来存储某一固定值,例如圆周率3.14等。ActionScript3.0与2.0还有一些区别,例如3.0对象属性统一取消下划线,代码只能写在时间轴上或外部定义的类.as文件,这里就不再详述了,大家在以后的学习时深入体会吧。Flash认识动作面板要点导读在本节中,同学们将会学习如下的知识。1.如何调出“动作”面板(F9以及相应的快捷键)CTRL+ENTER,CTRL+Z,CTRL+L,shift,alt,Enter,ESC2.“动作”面板的使用Flash认识动作面板1.标题栏4.脚本导航窗口3.AS3.0元素与类2.AS版本选择菜单5.弹出菜单6.工具栏7.脚本编辑窗口Flash认识动作面板左侧的上方是一个动作工具箱,单击前面的图标展开每一个条目,可以显示出对应条目下的动作脚本语句元素,双击选中的语句即可将其添加到编辑窗口。左下方是一个脚本导航器。里面列出了FLA文件中具有关联动作脚本的帧位置和对象;单击脚本导航器中的某一项目,与该项目相关联的脚本则会出现在脚本窗口中,并且场景上的播放头也将移到时间轴上的对应位置上。双击脚本导航器中的某一项,则该脚本会被固定。右侧部分是脚本编辑窗口,这是添加代码的区域。可以直接在脚本窗口中编辑动作、输入动作参数或删除动作。也可以双击动作工具箱中的某一项或脚本编辑窗口上方的“添加脚本”工具,向脚本窗口添加动作。Flash认识动作面板添加脚本查找插入目标路径语法检查自动套用格式显示代码提示调试选项折叠成对大括号折叠所选展开全部应用块注释帮助Flash给Flash文件添加动作脚本要点导读在本节中,同学们将会学习如下的知识。1.在主场景关键帧中使用ActionScript代码控制动画播放2.引用外部ActionScript文件Flash给Flash文件添加动作脚本在ActionScript2.0时代,Flash中添加动作脚本可以分为两种方式一是为“关键帧”添加动作脚本二是向关键帧中的“对象”添加动作脚本,即在“按钮”元件和“影片剪辑”元件实例上添加动作脚本,“图形”元件上是不能添加动作脚本的。在3.0中,动作脚本只能放在时间轴的关键帧或外部的as文件中,这里的时间轴可以是场景的时间轴,也可以是影片剪辑的时间轴,然而不能像在2.0中一样,直接给对象(例如按钮)添加动作脚本,这是需要注意的。Flash给Flash文件添加动作脚本在ActionScript面向对象的编程中,任何类(数据类型)都可以包含3种特性:属性,方法和事件。一、属性:表示某个对象的特性,包括高度宽度,透明度等。二、方法:是指可以由对象执行的动作或操作。包括play(),stop(),gotoAndStop()和gotoAndPlay()。格式为:对象名(变量)、句点、方法名和小括号对象名.方法名(参数);三、事件:事件源、事件和响应。Flash给Flash文件添加动作脚本方法:播放:play,如:this.Film.play();停止:stop,如:this.Film.play();停止全部声音:SoundMixer.stopAll();跳转且播放:gotoAndPlay();如:gotoAndPlay(55);或gotoAndPlay(“zzw”);或gotoAndPlay(1,场景2);Flash给Flash文件添加动作脚本跳转且停止:gotoAndStop();如:gotoAndStop(100);或gotoAndStop(“zzw”);或gotoAndStop(99,场景3);Flash给Flash文件添加动作脚本写动作脚本时注意事项:1.脚本语言区分大小写。如:gotoAndPlay(55)不能写成gotoandplay(55)2.AS3.0里只能将动作脚本的代码写在时间轴的关键帧或者外部as中,这里的时间轴可以是场景的时间轴,也可以是影片剪辑的时间轴。3.AS里的小括号()用于定义函数或者动作的参数,不用参数的动作也不能省略(),如:stop()。4.保留字“this”代指主场景的时间轴,主时间轴上的脚本可以省略,但不建议省略。如:this.Film.play()也可以写成Film.play()5.在AS中,任何一条语句都以英文状态下的分号“;”作为结束的标志。虽然有时省略了“;”号,Flash也可以成功的编译这个脚本,但这是不规范的。Flash给Flash文件添加动作脚本三、事件:事件是确定计算机执行哪些指令以及何时执行的
本文标题:Flash动作脚本
链接地址:https://www.777doc.com/doc-4701825 .html