




已阅读5页,还剩50页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第七章 flash动画脚本基础,7.1 动作面板简介,演示说明,7.2 常用术语,动作 在播放SWF文件时指示SWF文件执行某些任务的语句。 例如:start(); stop()等。 事件 在很多情况下,动作不会独立执行,而是要提供一定的条件,就是要有一定的事情对该动作进行触发,才会执行这个动作,其触发作用的事情在ActionScript中称为事件。例如:鼠标的移动、按下与放开;键盘上某键的敲击等。,对象 是属性和方法的集合。每个对象都有各自的名称,并且都是特定类的实例。 类 一系列相互之间有关联的数据的集合称为一个类。 属性 用于定义对象的特性。例如:_visible用于定义影片剪辑是否可见,所有影片剪辑都有此属性。 方法 被指派给某一个对象的函数,在一个函数被指派给一个对象后,它便可以作为这个对象的一个方法调用。,对象命名规则图表,函数 是可以向其传递参数并能够返回值的可重复使用的代码块。 实例 属于某个类的对象。一个类可以产生很多个属于这个类的实例。类的每个实例均包含该类的所有属性和方法。 例如:所有影片剪辑都是MovieClip类的实例,他们都有诸如_visible,_alpha这样的属性,以及gotoAndPlay()和getURL()这样的方法。,变量 是用来存储信息的存储器,脚本程序中的变量可以保存所有类型的数据,包括字符串、数值、布尔值(true或false)等。 常量 也称为常数,和变量相对应,在程序编写过程中不能被改变,常用于数值的比较。 关键字 是有特殊含义的保留字。不能使用关键字作为标识符。,7.3 Flash编程基础,在flash中,编写程序不可缺少的内容主要有事件、动作和对象。例如下面的语句: on(press) gotoAndplay(“scene 1”,1) 但并不是所有的语句都具备这三个因素,一些语句可以只具有其中的一个或几个因素。,7.4 Action Script基本语法规则,一、点语法 在ASP中,点“.”被用来指明与某个对象或影片剪辑相关的属性和方法,也用于标识指向影片剪辑或变量的目标路径。点语法表达式由对象或影片剪辑实例名开始,接着是一个点,最后是要指定的属性,方法或变量, 例如,“dog._alpha”表示调用对象dog的_alpha属性。 再例如:要使舞台上的实例“bird”移动到第24帧并停止在那里,可以使用以下程序: bird.gotoAndstop(24);,二、大括号,在ASP中,用“ ”把程序分成一块一块的模块,可以把括号中的代码看做一句完整的表达。 例如:on(press) gotoAndplay(“scene1”,1); ,三、分号和小括号,分号:在ASP中,用分号来结束一行语句。 小括号:“()”用来放置参数。例如:gotoAndPlay(10) 另外可以通过使用括号来改变ASP操作符的优先级顺序。,四、关键字和注释,关键字:前面已经讲过,在命名变量、函数或标签时,不能使用flash 中的保留关键字。这些关键字专门用于脚本语言中,并且必须以小写形式书写,不能写成大写形式。 注释:注释语句以双斜杠“”开始。为语句添加注释可以帮助其他人理解用户编写的脚本。,ASP中的关键字,7.5 事件,编写程序不可缺少的内容主要有事件、动作和对象。在flash中,将任何导致动作发生的事情都称为事件。 事件包括两类:鼠标事件 帧事件,什么叫做事件(Event)? 举例来说:衣服脏了,车子脏了,我们就会“洗”衣服,“洗”车子,我们对车子、衣服都做了“洗”这个动作,这个“洗”的动作就是一个事件!所以我们“听”、“看”、“说”、“闻”等,这些动作都是一个“事件”。 简而言之:凡是加诸于“对象”上的“动作”都是“事件”。在计算机的世界中,您单击一次鼠标键,就产生了一个点击一次鼠标键(Click)的事件。,对象名称.addEventListener(事件种类,处理函数名); 例如建立影片剪辑,MovieClip的鼠标按一下事件监听器: var my_mc:MovieClip=new MovieClip(); my_mc.addEventListener(“click”,mouseClick); function mouseClick(me:MouseEvent) trace(“你按了鼠标按钮“); 上例,当我们在影片剪辑上按一下鼠标键时,就会调用mouseClick()函数进行事件处理。本例是在输出面板显示:“您按了鼠标按钮”这段文字。,一、帧事件,举例说明。 注意:在flash中,只有关键帧才可以分配动作 ,而普通帧和空白帧是不可以分配动作的。 定义关键帧动作的操作比较简单,不用为关键帧分配事件,可以直接将语句加入到右侧的语句栏中。 在默认情况下,flash制作的动画播放到最后,会自动返回到第一帧,并且自动重新播放。但多数情况下,我们想让flash动画播放完成之后,停在最后的位置,这就需要在最后一帧加入stop语句。,二、鼠标事件,鼠标事件即响应鼠标的动作,能够响应鼠标事件的对象有按钮事件和影片剪辑按钮事件两种类型。 A、定义按钮事件:举例说明。 B、定义影片剪辑的鼠标事件。,常用的鼠标事件,CLICK 当发生一次单击鼠标键的动作时 DOUBLE_CLICK 当发生双击鼠标键的动作时 MOUSE_CLICK 当发生按下鼠标键的动作时 MOUSE_MOVE 当鼠标指针在物体范围内移动时,MOUSE_OUT 当鼠标指针移开物体的范围时 MOUSE_OVER 当鼠标指针移入物体的范围时 MOUSE_UP 当发生放开鼠标键的动作时 MOUSE_WHEEL 当发生鼠标轮滚动的动作时,7.6 控制电影动作,在flash影片控制中包括最常用的动作,用于控制影片或影片剪辑元件中的时间轴。 利用这几种常用的动作可以轻松实现交互式影片中最为常见的效果。,7.6.1 play语句,该语句的语法结构为: play() 并且该语句没有参数,它的作用是使动画开始播放。 举例演示。,7.6.2 stop语句,stop动作用于使影片停止播放。它既可以应用于影片中的时间轴,达到控制影片停止的目的。也可以应用于影片剪辑元件中的时间轴,达到控制影片剪辑元件停止的目的。 举例演示。,7.6.3 goto语句,goto动作使电影跳转到时间轴上指定的帧或场景。分为gotoAndPlay和gotoAndStop两种。 gotoAndPplay的作用将播放指针指向特定的场景和帧,并且从此开始播放,如果场景没有被指定,则播放指针指向当前场景的特定帧。 该语句的语法结构为: gotoAndPlay(scene,frame) gotoAndStop语句的作用是当播放到指向特定的场景和帧时,停止动画的播放。如果没有指定场景,则停止指针将指向当前场景的特定帧。 语法结构为; gotoAndStop( scene,frame),7.6.4 stopAllSound语句,stopAllSound动作用于停止影片中所有的声音效果,而不影响影片的视觉效果。该语句没有参数,通常用于制作静音按钮。,7.6.5 nextFrame和prevFrame,nextFrame动作用于使影片播放到下一帧停止。 prevFrame动作用于使影片返回到上一帧并停止。 nextFrame和prevFrame语句没有参数。它们一般应用于鼠标事件中,控制影片的前进或后退。,7.6.6 on语句,on语句用于设置鼠标的各种事件,实际上是事件而不是动作。 双击on语句,在脚本编辑区出现on事件提示表,在提示列表中包含了应用于按钮实例的各种事件。,7.6.7 路径,在flash中用ASP编辑程序脚本时,经常需要对某对象实施一种动作或在某种场合下调用某对象。为了找到不同位置的对象,就需要引入路径的概念。 Flash影片剪辑元件都具有一个特性:元件内可以嵌套另一个元件,为了说明这些元件的位置,引入“路径”的概念。 在flash中路径分为 绝对路径 相对路径,A、绝对路径,绝对路径是在读取或调用任何变量或影片剪辑时,以主时间轴为起点,从外到内逐级用点语法写下路径。在flash中主场景的时间轴用_root来表示。 例如,主场景内有一个名为Ball的影片剪辑元件,其路径可写为_root.Ball,当指定该实例转到第10帧处执行时,可以写成_root.Ball.gotoAndplay(10)。若Ball元件中还包含一个影片剪辑元件Ball01,而Ball01中也包含一个影片剪辑元件Ball001,若要使Ball001元件停止播放时,就可写成_root.Ball. Ball01. Ball001.stop()。,B、相对路径,相对路径是以当前发出指令的对象所在的时间轴为起点,去调用其他电影剪辑及其变量。在flash中,相对路径是以_parent开头的。 _parent代表父目录,也就是包含该元件所在的时间轴。 当在Ball01元件上要控制Ball001停止播放时,使用相对路径就可以写成_parent .Ball001.stop()。,7.7 动作脚本中的数据类型,定义 描述变量或动作脚本元素可以包含的信息的种类。 1、基本数据类型:字符串、数值、布尔值等,基本数据类型都有一个不变的值,可以保存它所表示元素的实际值。 2、引用数据类型:指影片剪辑和对象,它们的值可能发生更改,因此它们包含对该元素的实际值的引用。,字符型(string),字符型变量用来存储字符型数据,例如,name=“iming”。字符型数据是一个字符(字母、数字或标点符号)序列。在ASP语句中输入字符串,需要使用单引号或双引号括住。 练习:判断下面的数据是否是字符型。 name=“小赵”;home=“3,street”;life=“3?”;name=john,数值型和逻辑型,数值型(Number):用来存储数值型数据,如size=200。 逻辑型(Boolean):用来存储逻辑型数据,如rain=true。逻辑型数据包括true和false。逻辑值与逻辑操作一起,常用在控制脚本运行的比较语句中。,对象型和影片剪辑型,对象型(Object):对象是属性的集合,不同的对象包含有不同的属性,每个属性都有名称和值。属性值可以是任何flash数据类型,甚至可以是对象数据类型。这样可以将一个对象嵌套在另一个对象之中。要指定对象及其属性,可以使用(.)运算符 例如:在以下代码中,hoursWorked是weeklyStats的属性,而后者是employee的属性。 employee.weeklyStats.hoursWorked 影片剪辑型(Movieclip):用来存储影片剪辑型数据。它是惟一引用图形元素的数据类型。,7.8 变量,定义 是用来存储信息的存储器,脚本程序中的变量可以保存所有类型的数据,包括字符串、数值、布尔值(true或false)等。,7.8.1 变量命名规则,变量的命名主要遵循以下规则: 变量名由字母(az,AZ),数字(09)和下划线“-”、$组成,中间不允许有空格,并且必须以字母或下划线开头。 变量不能和关键字同名,并且不能是布尔值。并且在flash中关键字都是小写形式,若写成大写,flash会将它视为普通字符,而不作为关键字。例如,to是一个关键字,而TO却不是。 变量名在其作用范围内必须是唯一的。 在使用变量时应遵循“先定义后使用”的原则,即在脚本中必须先定义一个变量,才能在表达式中使用这个变量。 flash对程序中大小写字母进行识别,即BOOK不等于book,建议尽量使用具有一定含义的变量名。,练习:data; I; J.smith; $zzu; 3der; program_1; sum; abc; a=b; else; lotus_1_2_3; _123; for.,7.8.2 变量定义与作用域,一、变量的定义 在flash中不必定义变量的类型,flash会在赋值时自动定义变量的类型。 按作用范围,可分为 全局变量(Global) 局部变量(Local) 我们常用global.变量名来定义全局变量, 我们常用var语句来定义局部变量。,全局变量和局部变量的语法结构,定义全局变量的语法格式为: global.变量名 例如: global.myName=“lucy” 定义局部变量的语法结构: var变量名=表达式 例如: var m=20,7.8.3 变量作用域,前面已经学过,变量分为全局变量和局部变量,变量只能在其作用域中被引用。一个全局变量可以在所有的时间轴中共享,而一个局部变量仅在所属的代码块(即一个大括号)内作用。 在程序中局部变量被大量地使用,因为使用局部变量可以有效地防止名称冲突。但在有些情况下,只能使用全局变量。 例如,要在一个代码块中引用另一个代码块中的变量,或者要在整个动画中传递某个变量的值。,7.9 运算符和表达式,一、运算符和表达式 运算符是能够提供对数值、字符串、逻辑值进行运算的关系符号。 在flash中运算符有数值运算符,字符串运算符,比较运算符,逻辑运算符,位运算符和赋值运算符。 表达式是用运算符将常量、变量和函数以一定的运算规则组织在一起的计算式。例如a=b。,数值运算符,数值运算符可以执行加、减、乘、除运算,也可以执行其他算术运算。 如果加号两边的操作数其中之一属于“字符串”类型,则“”运算符将变成字符串连接指令 例如:var str”20”+36 var str= “num”+36,比较运算符,用于比较表达式的值,然后返回一个布尔值。这些操作符最常用于判断循环是否结束或用于条件语句中。,逻辑运算符,逻辑运算符会比较布尔值,然后返回第3个布尔值。例如,如果两个操作数为true,则逻辑与运算符(&)将返回true。如果其中一个或两个操作为true,则逻辑“或”运算符(|)将返回true。,赋值运算符,用赋值“=”运算符给变量指定值,如,x=3;scale=60。,运算符的使用,1、运算符的优先级 当在一个表达式中使用了多个运算符时,就要遵循一定的规则。例如,“*”要在“+”之前被执行,因为乘法运算比加法运算有更高的优先级,ASP是严格遵循这个优先级来决定哪个运算符先执行,哪个后执行的。 例如:myScore=(30+2)*2 程序的执行结果是? 而: myScore=30+2*2 该程序的执行结果是? 2、在运算过程中,如果运算符的优先级别相同,则从左到右计算。而赋值表达式是从右向左计算。,7.10 startDrag语句,startDrag语句可以使被定义的对象跟随鼠标运动。 startDrag语句的格式为: startDrag(target,lock,left,top,right,bottom) Target:也就是对象,指要拖动的影片剪辑的实例名称。一次只能定义一个影片剪辑实例。 lock 表示影片拖动时是否中心锁定在鼠标,值有 true,false ; true 锁定, false 不锁定。 left,top,right,bottom 就是影片拖动的左,上,右,下的范围。我们举个例子说明一下: startDrag(mc,true,100,100,300,300); 就是拖动影片 mc ,把影片中心锁定在鼠标,拖动的范围是( 100 , 100 ) ( 300 , 300 )的矩形框。 如果这样写: startDrag(mc,true); 拖动影片没有范围限制;,7.10.1 利用on、startDrag和stopDrag语句制作可以拖动的影片剪辑,StopDrag语句的使用方法与startDrag语句类似。 打开方法:双击“动作”“影片剪辑控制” “stopDrag”。,7.11 浏览器和网络控制命令,1、fscommand命令 它可以实现对影片浏览器,也就是Flash Player的控制。 语法格式: fscommand(命令,参数);,fscommand可以执行的命令和参数,2、getURL命令,作用:为事件填加超级链接,包括电子邮件链接 格式: getURL(URL,Window,method); url:String - 可从该处获取文档的 URL。 window:String 可选 - 指定应将文档加载到其中的窗口。您可输入特定窗口的名称,或从下面的保留目标名称中选择: _self 指定当前窗口中的当前帧。 _blank 指定一个新窗口。 _parent 指定当前帧的父级。 _top 指定当前窗口中的顶级帧。 method:String 可选 - 用于发送变量的 GET 或 POST 方法。,3、loadMovie和 unloadMovie
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 商业照明设计与安装合同协议条款
- 江西省鹰潭市第九中学2024-2025学年九年级下学期期末考试历史试卷(含答案)
- 幸福除夕夜作文250字13篇范文
- 写人作文我的同学550字13篇
- 《新编商务应用文写作》第七章 习题参考答案
- 春节出游作文800字10篇
- 早教知识培训课件
- 我的奇思妙想作文450字11篇范文
- 产品质量检查与改善方案标准操作模板
- 早搏的鉴别诊断
- 重庆第二师范学院《基础乐理与视唱》2022-2023学年第一学期期末试卷
- 网约车司机安全培训
- 数据安全风险评估报告
- 细胞学科普讲座模板
- 1云南省建设工程施工图设计文件审查工作流程
- 混凝土劳务加工合同模板
- 2019新教材人教版生物必修1整本教材课后习题全部答案
- 大气污染治理技术实施方案
- 吊篮作业人员安全技术交底
- 1《哦香雪》公开课一等奖创新教学设计统编版高中语文必修上册
- 2024-2030年中国天然气制合成油行业需求量预测与营销战略分析研究报告
评论
0/150
提交评论