Flash 5 ActionScript交互动画简明教程(中)

3.对象
   对象是面向对象编程语言的重要语言元素。对象一般都封装了一些属性和方法。通过读取或设置对象的属性,调用对象的方法,可以减少

编程工作量,提高编程效率,轻松实现我们想要完成的任务。Flash的预定义对象如下表所列。
   对象 说明
   ---------- -------------------------
   Object Object对象
   Number 数值对象
   String 字符串对象
   Boolean 逻辑对象
   Math 数学对象
   Array 数组对象
   Date 日期对象
   Color 颜色对象
   Key 按键对象
   Selection 选择对象
   Sound 声音对象
   MovieClip 电影剪辑对象
   XML 可扩展标记语言对象
   XMLSocket XML端口对象
   --------------------------------------
  
   下面简要介绍其中一些对象的属性和方法。
   (1) Math(数学对象)
   数学对象的作用是提供一些数学常数(如圆周率、2的平方根等等)和一些常用的数学函数,在编写脚本时可以随时调用。数学对象的属性

和方法如下表所列。
   属性和方法 说明
   ------------ -------------------------------------------------
   E 自然对数的底数,其值约为2.71828
   LN2 以e为底2的自然对数,其值约为0.69314718059945286
   LN10 以10为底的自然对数,其值约为2.30258509299404590
   LOG10E 以10为底e的对数,其值约为0.43429448190325181667
   LOG2E 以2为底e的对数,值约为1.442695040888963387
   PI 圆周率,其值约为3.14159265358979
   SQRT1_2 1/2的平方根,其值约为0.707106781186
   SQRT2 2的平方根,其值约为1.414213562373.
   Sin 求正弦值
   asin 求反正弦值
   cos 求余弦值
   acos 求反余弦
   tan 求正切值
   atan 求反正切
   atan2 求Y/X弧度值的反正切值
   abs 求绝对值
   random 产生0-1之间的随机数
   sqrt 求根号2的值
   log 求自然对数
   exp 求指数
   ceil 求数的上限整数
   floor 求下限整数
   round 求四舍五入
   max 求最大值
   min 求最小值
   pow 求x的y次方
  
   数学对象的属性都是一些常用的数学常数,它的方法都是一些常用的数学函数,包括三角函数、常用对数、自然对数、随机函数等等。
   (2) Array
   我们可以把相同性质的一组数据存入一个数组对象中,便于利用数组对象的各种属性和方法,以及循环控制对这组数据进行处理。
   使用数组对象的属性和方法可以访问和处理数组中的数据,包括增加、删除数组元素,对数组元素进行排序等操作。数组对象的属性和方

法如下表所列。
   方法 说明
   ----------- -------------------------------------------
   length 返回数组的长度
   concat 把指定参数连接起来组成一个新数组
   join 把数组中所有的元素连接起来生成一个字符串
   pop 删除并返回数组的最后一个元素
   push 把一个或更多元素添加到数组尾部
   reverse 倒置数组中的元素
   shift 删除数组的第一个元素,并返回该元素的值
   slice 取指定数组的部分元素组成一个新的数组
   sort 对数组元素排序
   splice 增加或删除数组中的元素
   toString 返回由所有数组元素的值组成的字符串
   unshift 在数组前面插入一个或多个元素
  
   (3) Date
   日期对象的作用是对访问系统日期和时间,并可对日期对象的日期和时间执行设置、转换等各种操作。日期对象共有37个方法,可以对日

期和时间进行各种操作,如下表所列。
   方法 说明
   ------------------ --------------------------------------------------------------
   getDate 根据本地时间返回指定日期对象本月的第几天(1-31)
   getDay 根据本地时间返回指定日期对象的周日(0-星期日,1-星期一…)
   getFullYear 根据本地时间返回指定日期对象的四位数年份
   getHours 根据本地时间返回指定日期对象的小时数
   getMilliseconds 根据本地时间返回指定日期对象的毫秒数
   getMinutes 根据本地时间返回指定日期对象的分钟数
   getMonth 根据本地时间返回指定日期对象的月份
   getSeconds 根据本地时间返回指定日期对象的秒数
   getTime 返回指定日期对象自1970年1月1日午夜以来的毫秒数(世界时)
   getTimezoneOffset 返回计算机本地时间与世界时之间的时差(以分为单位)
   getUTCDate 根据世界时返回指定日期对象本月的第几天(1-31)
   getUTCDay 根据世界时返回指定日期对象的周日(0-星期日,1-星期一…)
   getUTCFullYear 根据世界时返回指定日期对象的四位数年份
   getUTCHours 根据世界时返回指定日期对象的小时数
   getUTCMilliseconds 根据世界时返回指定日期对象的毫秒数
   getUTCMinutes 根据世界时返回指定日期对象的分钟数
   getUTCMonth 根据世界时返回指定日期对象的月份
   getUTCSeconds 根据世界时返回指定日期对象的秒数
   getYear 根据本地时间返回指定日期对象的年份
   setDate 根据本地时间设置指定日期对象本月的第几天
   setFullYear 根据本地时间设置日期对象的四位数年份
   setHours 根据本地时间设置日期对象的小时数
   setMilliseconds 根据本地时间设置日期对象的毫秒数
   setMinutes 根据本地时间设置日期对象的分钟数
   setMonth 根据本地时间设置日期对象的月份
   setSeconds 根据本地时间设置日期对象的秒数
   setTime 用毫秒数设置指定日期对象的日期
   setUTCDate 根据世界时设置指定日期对象的日期
   setUTCFullYear 根据世界时设置指定日期对象的四位数年份
   setUTCHours 根据世界时设置指定日期对象的小时数
   setUTCMilliseconds 根据世界时设置指定日期对象的毫秒数
   setUTCMinutes 根据世界时设置指定日期对象的分钟数
   setUTCMonth 根据世界时设置指定日期对象代表的月份
   setUTCSeconds 根据世界时设置指定日期对象的秒数
   setYear 根据本地时间设置指定日期对象的年份
   toString 返回代表指定日期对象中存储的日期和时间的字符串值
   Date.UTC 返回1970年1月1日午夜与指定时间之间的毫秒数(世界时)
  
   (4) Color
   通过颜色对象,可以在动作脚本中操纵电影剪辑的颜色,包括读取、设置和变换颜色等操作,使电影剪辑实例的颜色丰富多彩。颜色对象

有4个方法,调用这些方法读取和设置颜色,如下表所列。
   方法 说明
   -------------- ---------------------------------------------------
   setRGB 设置颜色对象的RGB颜色
   getRGB 返回最近一次调用setRGB方法设置的RGB值
   setTransform 设置颜色对象的颜色变换
   getTransform 返回setTransform方法最后一次设置的变换信息
  
   (5) Key
   使用按键对象可以捕获用户的按键。按键对象的属性和方法如下表所列。
   属性和方法 说明
   ------------- ------------------------------------
   BACKSPACE 返回退格键键码(9)
   CAPSLOCK 返回Caps Lock键键码(20)
   CONTROL 返回Ctrl键键码(17)
   DELETEKEY 返回Delete键键码(46)
   DOWN 返回下箭头键键码(40)
   END 返回End键键码(35)
   ENTER 返回Enter键键码(13)
   ESCAPE 返回Esc键键码(27)
   HOME 返回Home键键码(36)
   INSERT 返回Insert键键码(45)
   LEFT 返回Left键键码(37)
   PGDN 返回PageDown键键码(34)
   PGUP 返回PageUp键键码(33)
   RIGHT 返回右箭头键键码(39)
   SHIFT 返回Shift键键码(16)
   SPACE 返回空格键键码(32)
   TAB 返回Tab键键码(9)
   UP 返回上箭头键键码(38)
   getAscii 返回最近一次按键的ASCII码
   getCode 返回最近一次按键的虚拟键码
   isDown 判断键码所对应的键是否已按下
   isToggled 判断CapsLock或NumLock是否被激活
  
   (6) Sound
   有了声音对象,我们可以在动作脚本中实现动态音效控制,如声音的播放控制、音量控制、左右声道平衡控制等等。掌握声音对象

setTransform方法的高级应用,你还可以随心所欲地添加各种有趣的音效。
   使用声音对象的方法可以实现对声音的各种控制,包括声音文件的连接、播放控制、音量控制、左右声道平衡控制等等,如下表所列。
   方法 说明
   ---------------- ------------------------------------
   attachSound 把指定的声音连接到指定的声音实例
   start 开始播放声音
   stop 停止播放声音
   setVolume 设置指定声音对象的音量
   getVolume 返回声音对象的音量大小(0-100)
   setPan 设置声音对象的左右声道平衡
   getPan 返回声音均衡值(从-100到100)
   setTransform 设置声音对象的转换信息
   getTransform 返回声音对象的声音转换信息
  
   (7) MovieClip
   通过电影剪辑对象,我们可以在动作脚本中控制动画中的电影剪辑实例,指令某个电影剪辑播放或停止播放,向时间轴中添加电影剪辑,

用动作复制电影剪辑,测试剪辑之间的相互碰撞等等。总之,有了电影剪辑对象就可以设计出复杂多变的,交互性更强的动画作品。
   电影剪辑对象拥有22种方法,有些方法的功能与标准动作相同,但也有一些方法是它特有的,如下表所列。
   方法 说明
   -------------------- -----------------------------------------------------
   attchMovie 添加电影剪辑到动画中
   duplicateMovieClip 复制电影剪辑实例
   getBounds 返回指定电影剪辑在目标坐标系中的边界坐标对象
   getBytesLoaded 返回指定电影剪辑对象数据流已下载的字节数
   getBytesTotal 返回指定电影剪辑的总字节数
   getURL 指定要下载文档的URL
   globalToLocal 把point对象从动画全局坐标转换为剪辑局部坐标
   gotoAndPlay 把播放头移动到指定的帧并开始播放
   gotoAndStop 把播放头移动到指定帧并停止播放
   hitTest 检测电影剪辑之间或剪辑与点之间的碰撞
   loadMovie 在不关闭Flash播放器的情况下载入指定的动画并播放
   loadVariable 从外部文件读取数据设置动画中的变量的值
   localToGlobal 把剪辑局部坐标转换为动画全局坐标
   nextFrame 把电影剪辑的播放头移至当前帧的下一帧
   play 播放指定的电影剪辑
   PrevFrame 把剪辑的播放头移至当前帧的前一帧并停止播放
   removeMovie 删除电影剪辑实例
   startDrag 使电影剪辑在播放时可以拖动
   stop 停止当前正在播放的电影剪辑的播放
   stopDrag 停止startDrag方法设置的拖动剪辑操作
   swapDepths 交换动画中电影剪辑的堆叠顺序
   unloadMovie 卸载loadMovie或attachMovie方法加载的动画