使用ActionScript编辑动画.ppt
第 十 章,使用ActionScript编辑动画,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,学 习 目 标,ActionScript语言是Flash的动作脚本语言,也是Flash中的高级技巧,使用它可以制作各种交互式动画,也可以很轻松地做出绚丽的Flash特效。随着Flash CS3的推出,它同时也带来了全新的动作脚本语言ActionScript 3.0。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,本 章 重 点,了解ActionScript 3.0的特点及其常用元素 掌握ActionScript的输入 掌握对象的处理方法 掌握条件语句的使用 掌握循环语句的使用 掌握类的编写与调用方法,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.1 ActionScript 3.0概述,ActionScript是Flash与程序进行通信的方式。用户可以通过它告诉Flash将要执行的任务,并询问在影片运行时发生了什么。这种双向的通信方式,使得用户可以创建具有交互功能的影片,也使得Flash能优于其他动画制作软件。ActionScript与其他脚本语言一样,都遵循特定的语法规则、保留关键字、提供运算符,并且允许使用变量存储和获取信息,而且还包含内置的对象和函数,允许用户创建自己的对象和函数。ActionScript 3.0的特点 ActionScript 的常用概念 ActionScript的语法 ActionScript的数据类型 ActionScript的变量 ActionScript的函数 ActionScript的运算符,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.1.1 ActionScript 3.0的特点,随着Flash CS3的推出,也为用户带来了最新的ActionScript语言ActionScript 3.0,与之前采用AVM1虚拟机的ActionScript 1.0或者ActionScript 2.0相比,采用AVM2虚拟机的ActionScript 3.0在编程功能上有了进一步的优化,其操作细节上的完善使动画制作者的编程工作更加得心应手;另外,ActionScript 3.0的代码执行速度有了显著提高,较之前版本几乎快了10倍。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.1.2 ActionScript的常用概念,在ActionScript动作脚本中包含了动作、运算符、对象等多种元素,可以将这些元素组织到动作脚本中,然后指定要执行的操作。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.1.3 ActionScript的语法,ActionScript语法是ActionScript编程中最重要环节之一,它相对于其他的一些专业程序语言来说较为简单。ActionScript动作脚本具有语法和标点规则,这些规则可以确定哪些字符和单词能够用来创建含义及编写它们的顺序。例如在ActionScript语法中,分号通常用于结束一个语句。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.1.4 ActionScript数据类型,数据类型用于描述变量或动作脚本元素可以存储的数据信息。在Flash中包括两种数据类型,即原始数据类型和引用数据类型。原始数据类型包括字符串、数字和布尔值,都有一个常数值,因此可以包含它们所代表的元素的实际值;引用数据类型是指影片剪辑和对象,值可能发生更改,因此它们包含对该元素实际值的引用。此外,在Flash中还包含有两种特殊的数据类型,即空值和未定义。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.1.5 ActionScript的变量,变量是动作脚本中可以变化的量。通过在影片播放过程中更改变量的值,可以记录和保存用户的操作信息、记录影片播放时更改的值或评估某个条件是否成立等。在首次定义变量时最好对变量进行初始化操作,为其指定一个初始值。初始化变量有助于用户在播放影片时跟踪和比较变量值。通常在使用变量之前,要先指定变量存储数据的数据类型,该类型值将对变量的值产生影响,变量主要有4种数据类型。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.1.6 ActionScript的函数,在ActionScript中,函数使一个动作脚本的代码块,可以在任何位置重新使用,就减少了代码量,从而提供工作效率,同时也可以减少手动输入代码时引起的错误。在Flash中可以直接调用已有的内置函数,也可以创建自定义函数,然后进行调用。将值作为参数传递给函数,它将对这些值进行操作。函数常用于复杂和交互性较强的动作制作中。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.1.7 ActionScript的运算符,ActionScript中的表达式都是通过运算符连接变量和数值的。运算符是在进行动作脚本编程过程中经常会用到的元素,使用它可以连接、比较、修改已经定义的数值。表10-6所示为ActionScript语法中的几种常用运算符的含义。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.2 ActionScript的输入,在ActionScript 3.0环境下,按钮或影片剪辑不再可以被直接添加代码,用户只能将代码输入在时间轴上,或者将代码输入在外部类文件中。在时间轴上输入代码 在外部AS文件中添加代码,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.2.1 在时间轴上输入代码,在Flash CS3中,用户可以在时间轴上的任何一帧中添加代码,包括主时间轴和影片剪辑的时间轴中的任何帧。输入时间轴的代码,将在播放头进入该帧时被执行。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.2.2 在外部AS文件中添加代码,当用户需要组件较大的应用程序或者包括重要的代码时,就可以创建单独的外部AS类文件并在其中组织代码。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.3 处理对象,ActionScript 3.0是一种面向对象(OPP)的编程语言,面向对象的编程仅仅是一种编程方法,它与使用对象来组织程序中的代码的方法并没有差别 属性 方法 事件 创建对象实例,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.3.1 属性,属性是对象的基本特性,如影片剪辑元件的位置、大小、透明度等。它表示某个对象中绑定在一起的若干数据块的一个。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.3.2 方法,方法是指可以由对象执行的操作。如果在Flash中使用时间轴上的几个关键帧和基本动画制作了一个影片剪辑元件,则可以播放或停止该影片剪辑,或者指示它将播放头移动到特定的帧。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.3.3 事件,事件用于确定执行哪些指令以及何时执行的机制。事实上,事件就是指所发生的、ActionScript能够识别并可响应的事情。许多事件与用户交互动作有关,如用户单击按钮或按下键盘上的键等操作。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.3.4 创建对象实例,在ActionScript中使用对象之前,必须确保该对象的存在。创建对象的一个步骤就是声明变量,我们已经学会了其操作方法。但仅声明变量,只表示在电脑内创建了一个空位置,所以需要为变量赋一个实际的值,这样的整个过程就成为对象的“实例化”。除了在ActionScript中声明变量时赋值之外,其实用户也可以在【属性】面板中为对象指定对象实例名。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.4 认识常用语句,ActionScript语句就是动作或者命令,动作可以相互独立地运行,也可以在一个动作内使用另一个动作,从而达到嵌套效果,使动作之间可以相互影响。条件判断语句及循环控制语句是制作Flash动画时较常用到的两种语句,使用它们可以控制动画的进行,从而达到与用户交互的效果。条件判断语句 循环控制语句,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.4.1 条件判断语句,条件语句用于决定在特定情况下才执行命令,或者针对不同的条件执行具体操作。ActionScript 3.0提供了3个基本条件语句。即if.else 条件语句、if.else if 条件语句和switch 语句。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.4.2 循环控制语句,循环类动作主要控制一个动作重复的次数,或是在特定的条件成立时重复动作。在Flash CS3中可以使用while、dowhile、for、forin 和for eachin 动作创建循环。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.5 编写类,ActionScript 3.0中的类种类繁多,本节重点介绍几个常用的类,通过实例使用户熟悉编写类以及外部AS文件的方法,以及掌握类的使用方法。include类 元件类 动态类,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.5.1 include类,了解ActionScript 1.0或者2.0编程的用户,对于include一定不陌生,在ActionScript 3.0中,使用Include指令依然可以用来导入代码。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.5.2 元件类,元件类的作用实际上是为Flash动画中的元件指定一个链接类名,它与之前介绍的Include类的不同之处在于,元件类使用的类结构要更为严格,且有别于通常的在时间轴上书写代码的方式。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.5.3 动态类,在制作一些比较复杂的程序时,往往需要由主类和多个辅助类组合而成。其中主类用于显示和集成各部分功能,辅助类则封装分割开的功能。,:计算机基础与实训教材系列系列丛书官方网站 http:/edu:,10.6 上机练习,ActionScript 3.0是一种全新的编程语言,为了使Flash的脚本编写更加规范,ActionScript3.0与之前版本的脚本编写模式的差别是比较明显的。譬如,以前用户在ActionScript 2.0中常常使用loadMovie或attachMovie这样的布局加载方式加载影片,但这种方法在ActionScript 3.0中已不再适用,按钮与影片剪辑元件也不再可以被直接添加代码。,