您好,欢迎访问三七文档
AS是什么•ActionScript是flash的脚本语言,是专门用来操作flash动画中的元素,在简单的Flash动画中,总是按照动画中的场景和帧的顺序播放动画的,而在运用了ActionScript的动画中,用户可以使用键盘和鼠标参与动画情节的交互控制,也可以通过ActionScript设置动作控制和创建动画对象,极大的丰富了Flash动画的表现功能。,例如:–AS能对动画的播放、停止,快进及音效的控制–AS能制作交互性很强的游戏,导航、课件等–AS可以制作可以制作炫酷的效果,礼花绽放同样的效果如果用AS来实现,制作简单,导出的体积更小。就是制作人机交互AS是什么•“动作”是指用ActionScript编写的、在动画播放的过程中指定某个动画对象完成某些动作所需要执行的一组命令或语句。•组织这类命令和语句形成的程序也被称为“动作脚本”。•“事件”是指在动画播放过程中发生的特定现象和某些交互操作。通常情况下,脚本所设计的“动作”总是由某一“事件”来触发的。AS是什么•初学者不需要了解每个动作脚本元素就可以开始撰写脚本,即使对动作脚本没有完全理解,也可尝试撰写简单的脚本。在动画制作过程中,只要有明确的动作控制目标,就可以使用简单的动作编写脚本。完全可以在学习的同时结合新的语言元素来逐步完成更为复杂的任务。比如,我们可以使用stop()命令来控制动画的停止播放,可以使用gotoAndPlay(50)命令控制动画的进程跳转到第50帧处继续播放。AS脚本的作用对象•和其它脚本不同,AS程序有作用对象一说,在FLASH动画中并不能任意插入AS,而要依附于相关对象•三种作用对象–关键帧–按钮–影片剪辑AS脚本的作用对象•(1)要使影片在播放头到达时间轴中的某一帧时执行某项动作,就选择该帧,打开动作面板添加实现这项动作的脚本。•对于一个完整的动画影片,有些定义函数和设置创建影片初始状态的变量的那些特殊“动作”通常需要指定给影片的第一帧,通常,可为第一帧指定影片开始时要执行的任何动作;也可以为动作脚本设置一个专门的图层。AS脚本的作用对象•(2)在单击或滑过按钮时要让影片执行某个动作,可为按钮指定动作。注意,必须是将动作指定给按钮元件的一个实例,而不是按钮元件;该元件的其它实例不受该动作的影响。•为按钮指定动作时,必须将动作嵌套在on处理函数中,并指定触发该动作的鼠标事件。AS脚本的作用对象•(3)通过为影片剪辑指定动作,可在影片剪辑加载或接收到数据时让影片执行动作。注意,必须是将动作指定给影片剪辑元件的一个实例;该元件的其它实例不受此控制的影响。•为影片剪辑指定动作时,必须将动作嵌套在onClipEvent处理函数中,并指定触发该动作的剪辑事件。AS工作窗口•动作面板F9•代码只能插入到关键帧•可以直接在左边窗口中选择代码插入•右边窗口按钮介绍,插入函数,查找,插入路径,检查语法,套用格式,脚本助手对于初学者通过脚本助手完成,但是不建议大家使用•右边下面脚本窗口固定功能AS语法基础•和其它计算机语言一样,ActionScript遵循自己的语法规则,保留关键字,提供运算符,并且允许使用变量存储和获取信息。ActionScript包含内置的对象和函数,并且允许创建用户自己的对象和函数。•ActionScript的语法和风格与JavaScript的语法和风格很相似;其源代码的书写格式与C语言源程序的要求相同。动作脚本术语和基本编程概念,包括函数、变量、语句、运算符、条件和循环等都可以参考JavaScript和C。AS基本语法规则•基本语法规则–字母区别大小写–注释•//单行注释•/**/多行注释变量的概念•存放数据的容器即变量,因是容器故值可变,而容器名称始终不变变量的定义及赋值•如何定义变量•如:定义一个容器,容器名字是myAge,用来存放年龄。定义如下:•varmyAge;•var是用来定义变量的关键字•myAge则是容器名,即变量名•变量赋值•那么这个变量怎么存放年龄呢?在定义变此时可以给定一个值,即变量值,如下所示:•varmyAge=66;•其中“=”号代表赋值运算符,把66这个值赋给变量myAge。•或•set(“myAge”,66)•提示:•首次定义变量时,为该变量指定一个已知值,这就是所谓的初始化变量,变量不初始化,是不能参与运算的;•如果使用未赋初值过的变量该变量的值将是NaN或undefined。并且动件脚本可能产生意外的结果。变量的命名的规则•不能是as关键字,所谓关键字也称保留字,指as预先定义好的标识符。•不能以数字开头,第一个字符必须是字母或下划线“_”和美元符“$”。•中间不能有空格。•变量名中不能使用标点符号,•不应将动作脚本语言中的任何元素用作变量名称。变量的命名的规则•a,m,ba,assw,a_aa,my_mc,$abc,$_ss,$_mc等等•my_txt保存文本的变量•错误的示例:•2_m//不能用数字开头•my-a//不能用减号分割•a.ss//不能使用标点符号•ab//不能有空格•在FlashMX2004以上的版本中变量也可以用中文来表示。•如:•var年龄=20;其中年龄就是变量名。•提示:在命名变量时规范的方法是不同类型的变量加不同的前缀或者后缀•影片剪辑:my_mc•按钮:my_btntrace()函数•trace()函数在编写脚本中,我们会大量用到trace()命令。trace()实际算是一个调试命令,它的功能是输出某个变量值到输出面板(和document.write()有点类似)变量的作用范围•在动作脚本中有3种类型的变量范围:•本地变量在声明它们的函数体(由大括号界定)内可用。•时间轴变量可用于该时间轴上的任何动作脚本。•全局变量和函数对于文档中的每个时间轴和范围可见。•本地变量(最常用)•要声明本地变量,请在函数体内部使用var语句。•本地变量的使用范围只限于它的代码块,它会在该代码块结束时到期。没有在代码块中声明的本地变量会在它的动作脚本结束时到期。•时间轴变量•时间轴变量可用于该时间轴上的任何动作脚本。•例如:•如果将代码“varx=10;”放置在第20帧上,则附加到第20帧之前的任何帧上的动作脚本都无法访问变量•全局变量•全局变量和对于文档中的每一时间轴和范围而言都是可见的。•若要创建具有全局范围的变量,请在变量名称前使用_global标识符,并且不使用var语法。•例如•在根时间轴第一帧上定义两个变量,然后将trace()放在不同时间轴和地点去返回它们的值,以观察它们的区别Vara=5_global.b=3用动态文本显示变量值•选择“动态文本”•给其设置一个变量名用输入文本输入变量值数据类型•字符串型•以双引号引起的•“As”•数值型•数值•1,300•布尔型•只有两种:•truefalse•其它类型:•对象•影片剪辑•undefined–表示未定义的数据类型,如下情况返回undefined值:–对象属性不存在–声明了变量但未赋值数值操作符•+(当加数其中一个为字符串时,即为字符串连接符)•-•*•/•%•++•--比较操作符•比较操作符•==•••=•=•返回值只有两个(true,false)条件运算符•操作符•条件运算符•?:•格式:表达式1?表达式2:表达式3•说明:当表达式1的返回值为true,则返回表达式2的值;否则返回表达式3的值•if(ab){max=a}else{max=b}•max=ab?a:b•示例:•一个按钮两种功能逻辑操作符•And(&&)左右两边都为真是才为真•or(||)一边为真即为真•Not取反时间轴控制命令•play();播放•stop();停止•gotoAndPlay();转到并播放•gotoAndStop();转到并停止•nextFrame();跳至下一帧并停止播放•prevFrame();跳至前一帧并停止播放On()事件处理函数•针对按钮对象的on()事件处理函数,该代码只能添加到按钮上,不能添加到时间轴上面•格式:on(鼠标事件){•//此处是我们的语句,这些语句组成的函数体来响应鼠标事件•}on()事件处理函数•常用的事件有如下几个:–press:在鼠标指针经过按钮时按下鼠标按钮–release:在鼠标指针经过按钮时释放鼠标按钮–rollOut:鼠标指针滑出按钮区域–rollOver:鼠标指针放在按钮–KeyPress(“key”)按下指定的标准键盘上的按键–dragOver:在鼠标指针滑过按钮时按下鼠标按钮,然后滑出此按钮,再滑回此按钮–dragOut:在鼠标指针滑过按钮时按下鼠标按钮,然后滑出此按钮区域•示例:•on事件中的参数的意义影片剪辑元件•影片剪辑的属性•影片剪辑的常用属性•用点语法设置和获取影片剪辑的属性•用setProperty()和getProperty()函数动态设置和获取影片剪辑属性•用数组运算符[]动态设置和获取影片剪辑属性影片剪辑的常用属性•_x,_y,•_width,_height,•_xscale,_yscale,•_rotation,旋转角度以“度”为单位,0到180为顺时针,0到-180为逆时针•_url,目标的存放路径如(file://c/MyDocuments/boot.swf)•_target,返回指定电影剪辑的目标路径如(_root.star.boot)•_name,实例名称,可改变。•_visible,true和false•_currentframe,取得当前时间播放线的当前帧号•_framesloaded,取得对象已载入的总帧数•_totalframes,取得目标的总帧数•_xmouse,_ymouse,注意,可以获得在主时间线和影片剪辑的坐标•用法:_root._xmouse,_root.boot._ymouse,•上面的属性用法均为:MovieCilp._property以点语法设置和获取影片剪辑属性•影片剪辑属性动态改变setProPerty()动态设置影片剪辑的属性•setProPerty()•功能:当影片播放时更改影片剪辑的属性•语法格式:•setProPerty(要设置其属性的影片剪辑的实例名称的路径,要设置的属性,属性的新值)获取影片剪辑的值•getProperty()•功能:返回影片剪辑的指定属性值•格式–getProperty(影片剪辑实例的路径,属性)•影片剪辑路径的两种写法•_root.my_mc•_root[“my_mc”]onClipEvent()及事件类别•onClipEvent():•这个语句指专门给电影剪辑添加命令的语句,就像on语句是专门给按钮添加命令一样。•格式:•onClipEvnet(事件)•{•//代码块•}•影片剪辑事件类别•onClipEvent(load)当影片片断第一次加载到时间轴时,会触发本事件一次•onClipEvent(enterFrame)当影片片断加载时间轴时,不论是放映或停止状态或显示与否,都会不断触发本事件。所以只要此片断被加载后,此事件会一直不断地执行,直到影片片断被删除为止。•onClipEvent(unload)当影片片断被删除时,会触发本事件一次。•onClipEvent(mouseDown)当鼠标左键被按下时,会触发本事件一次。•onClipEvent(mouseUp)当被按下的鼠标左键被放开时,会触发本事件一次。•onClipEvent(mouseMove)只要在场景中移动鼠标,就会不断触发本事件。•onClipEvent(keyDown)当键盘被按下时,会触发本事件。•onClipEvent(keyUp)当已按下的键盘被松开时,会触发本事件一次
本文标题:AS是什么
链接地址:https://www.777doc.com/doc-3730746 .html