2005/06/24 | Flash
类别(设计) | 评论(0) | 阅读(482) | 发表于 12:21
1.Actions

Actions(动作)是指示一个动画在播放时做某些事情的一些语句。例如,gotoAndStop把播放头放到指定的帧或标签。

2.Arguments

Arguments,称为参数,通过它可以把值传递给函数。

3.Classes

Classes(类)是可以创建的数据类型,用以定义的对象类型。要定义对象的类,需要创建一个构造函数。

4.Constructors

Constructors(常数)是不能改变的元素。例如,常数Tab总是具有相同的意义。常数在比较值时很有用。

5.Constructors

Constructors(结构体)是用来定义类的属性和方法的函数.

6.Datatypes

Datatypes(数据类型)是一组值和对这些值进行运算的操作符.字符串,数值,逻辑值(true和false),对象和电影剪辑是ActionScript的数据类型.

7.Events

Events(事件)是动画正在播放时发生的动作.例如,当装载电影剪辑,播放头到达某帧,用户单击按钮或移动到电影剪辑,或用户用键盘输入时,可以发生不同的事件.

8.Expressions

Expressions(表达式)是语句中能够产生一个值的任一部分.例如,2+2就是一个表达式.

9.Functions

Functions(函数)是可以传送参数并能返回值的可重用代码块.例如,geProperty函数传送属性名,然后返回这些属性的值;getVersion函数返回当前正在播放动画的Flash播放器的版本.

10.Handlers

Handlers(事件处理程序)是一利特殊的动作,它"处理"或管理事件(如mouseDowna和load).例如,on(onMouseEvent)和onClipEvent就是ActionScript的事件处理程序.

11.Identifiers

Identifiers(标识符)是用来标明变量,属性,对象,函数或方法的名字.第一个字符必须是字母,下划线(_)或美元特号($).每个后续字符必须是字母,数字,下划线(_)或美元特号($).例如,firstName是一个变量名.

12.Instances

Instances(实例)是属于某个类的对象.一个类的每个实例包含该类的所有属性和方法.所有电影剪辑都是Movieclip类的实例,均拥有该类的属性(如_alpha和_visible)和方法(如gotAndPlay和getURL).

13.Instancenames

Instancenames(实例名)是在脚步本中指向电影剪辑实例的唯一名字.例如,在符号库中的一个主符号可以称为,counter,在动画中该符号的两个实例可以取实例名scorePlayer1和scorePlayer2.

14.Keywords

Keywords(关键字)是具有特定的保留字。例如,var是一个用来声明本地变量的关键字.

15.Methods

Methods(方法)是分配给一个对象的函数.一个函数被分配后,可作为对象的方法被调用.

16.Objects

Objects(对象)是属性的集合.每个对象都有它的名字和值.对象允许你访问某种类型的信息.例如,预定义的Date(日期)对象提供来自系统时钟的信息.

17.Operators

Operators(操作符)是从一到多个值计算出一个新值的术语.例如,加(+)操作符把两个或多个值加到一起,产生一个新值.

18.Target paths

Target paths(目标路径)是动画中电影剪辑实例名,变量和对象的层次地址.可以在Instance面板中命名一个电影剪辑实例.主时间轴总是拥有一个名字_root.可以用目标路径指向电影剪辑实例中的动作,获取或设置变量的值.

19.Properties

Properties(属性)定义对象的属性.例如,_visible是所有电影剪辑的一个属性,它定义电影剪辑是可见还是隐藏.

20.Variables

Variables(变量)是存储任一数据类型的值的标识符.变量可以创建,改变和更新.它们存储的值可以恢复,供用户在脚步本中使用.

下面比较全面地集了ActionScript的语句并作出了简单的说明,其中包括Flash5中新增的ActionScript.语句是任何一门语言的基础,要成为Flash高手,精通ActionScript是必要的条件。

+Basic Actions 能加入到程序中的基本动作.

-Go to 跳转到指定的帧

-Play 播放

-Stop 停止

-Toggle High Quality 在高品质和低品质间切换

-Stop All Sounds 停止所有声音的播放

-Get URL 使浏览器浏览指定页面

-FSCommand 发送FSCommand命令

-Load Movie 加载影片

-Unload Movie 卸载影片

-Tell Target 指定Action命令生效的目标

-If Frame Is Loaded 帧是否被载入

-ON Mouse Event 鼠标事件



+Actions 所有的动作

-break 跳出循环

-call 调用指定帧

-comment 注释

-continue 继续循环

-delete 删除一个对象中的变量

-do while do while 循环

-duplicateMoveClip 复制电影剪辑

-else 否则(与if联用)

-else if 否则如果(与if联用)

-evaluate 调用自己写的函数

-for for 循环

-for..in 烈举对象中的子体(Child)

-FSCommand 发送FSCommand命令

-function 声明自定义函数

-getURL 使浏览器浏览指定页面

-goto 跳转到指定的帧

-if 如果

-ifFrameLoaded 帧是否被载入

-include 读入外部的ActionScript程序文件(.as)

-loadMovie 加载电影剪辑

-loadVariables 加载外部文件中的变量值

-locaToGlobal MC中的坐标转换成场景(Scene)中的坐标

-on 鼠标事件的触发程序

-onClipEvent 电影剪辑的事件触发程序

-play 播放

-print 输出到打印机

-removeMovieClip 删除电影剪辑

-return 在函数中返回一个值

-set variable 设定变量值

-setProperty 设定属性

-startDrag 开始拖动

-stop 停止

-stopAllSouuds 停止所有声音的播放

-stopDrag 停止拖动

-tellTarget 指定Action命令生效的目标

-toggleHighQuality 在高品质和低品质间切换

-trace 跟踪调试

-unloadMovie 卸载电影剪辑

-var 声明局部变量

-while 当……成立时节

-with 对……对象做……



+Operators 操作符

! 逻辑非操作

!= 不等于

"" 字符串

% 取余数

&& 逻辑与操作

() 括号

* 乘号

+ 加号

++ 变量自加一

-- 变量自减一

- 减号

/ 除号

< 小于

<= 小于等于

<> 不等于

== 相等

> 大于

>= 大于等于

and 逻辑与

not 逻辑非

or 逻辑或

typelf 返回变量类型

void 实例,无返回

‖    逻辑或操作



+Btiwise Operators 位操作符

& 位与操作

<< 位左移

>> 位右移

>>> 位右移(无符号)

^ 位异或操作

| 位或操作

~ 补位操作



+Compound Assign Operators 复合操作符

%=A%=B 等效于A=A%B

&=A&=B 等效于A=A&B

*=A*=B 等效于A=A*B

+=A+=B 等效于A=A+B

-=A-=B 等效于A=A-B

/=A/=B 等效于A=A/B

<<=A<<=b 等效于A=A<<B

>>=A>>=B 等效于A=A>>B

>>>=A>>>=B 等效于A=A>>>B

^=A^=B   等效于A=A∧B

|=A|=B 等效于A=A|B



+String Perators 字符串操作符

add 连接两个字符串

eq A eq B 字符串A值与字符串值B相等

ge A ge B 字符串A值大于等于字符串B值

gt A gt B 字符串A值大于字符串B值

le A le B 字符串A值小于等于字符串B值

lt A lt B 字符串A值小于字符串B值

ne A ne B 字符串A值不等于字符串B值



+Functions 函数

-Boolean 取表达式的布尔值(True或False)

-escape 除去URL串中的非法字符

-eval 返回由表达式命名的变量得值

-false 布尔非值(0)

-getProperty 获取属性

-getTimer 获取从电影开始播放到现在的总播放时间(毫秒数)

-getVersion 获取浏览的FlashPlayer的版本号

-int 把数值强制转换成整数

-isFinite 测试是否为非有限数

-isNaN 测试是否为非数值

-maxscroll 文本框的最长度

-newline 换行符

-Number 将参数转换成数值

-parseFloat 将字符串转换成浮点数

-parseInt 将字符串转换成小数

-random 产生0到指定数间的随机数

-scroll 文本框中的当前行

-string 将参数转换成字符串

-targetPath 返回指定实例电影剪辑的路径字符串

-ture 布尔是值(1)

unescape 保留字符串中的%XX格式的十六进制ASCⅡ码,XX表示用十六进制ASCⅡ码表示的特殊字符.





注意:使用文字文件传输变量给Flash时,某些特殊字符都必须采用十六进制ASCⅡ码来表示该字符,并在ASCⅡ码前面加上

%符号,这些特殊字符包括"+" "-" "?" "="……等等,以"+"为例,它的十六进制ASCⅡ码为2B,如果文字文件中包含"+"号,就

应该写成"%2B,否则会被解释成空格.

-updateAfterEvent 更新后面的事件

+String Functions 字符串函数

-chr 将ASCⅡ码转换成相应字符

-length 返回字符串的长度

-mbchr 将ASCⅡ/S-JIS编码转换成相应的多字节字符

-mblength 返回多字节字符串的长度

-mbord 将多字节字符转换成相应的ASCⅡ/S-JIS编码

-mbsubstring 截取多字节字符串中的字串

-ord 将字符转换成ASCⅡ码

-substring 截取字符串中的子串



+Properties 属性

-_alpha Alpha值(透明度值)

-_currentframe 在电影剪辑中的当前帧数

-_droptarget 正在拖动的电影剪辑是否播完

-_focusrect 焦点矩形框的显示与否(True显示/Flase不显示)

-_framesloaded 载入的影帧数

-_height 电影剪辑的高度

-_highquality 品质的高低(Ture高品质/Flase低品质)

-_name 电影剪辑的实体名

-_quality 当前品质(字符串值)LOW,MEDIUM,HIGH,BEST

-_rotation 电影剪辑旋转的角度(单位:度)

-_soundbuftime 声音的缓冲区大小(默认值5,单位:秒)

-target 电影剪辑的路径

-_totalframes 总帧数

-_url 电影被调用的URL地址

-_visible 是否可视(True可视/False不可视)

-_width 电影剪辑的宽度

-_x 电影剪辑的X坐标

-_xmouse 鼠标的X坐标

-_xscale 电影剪辑的X轴向缩放度

-_y 电影剪辑的Y坐标

-_ymouse 鼠标的Y坐标

-_yscale 电影剪辑的Y轴向缩放度



+Objects 对象



+Array 数组

-concat 合并多个数组

-join 合并数组元素字符串

-length 返回数级组长度

-new Array 新建数组对象

-pop 出栈(FILO先入后出)

-push 入栈(入队列)

-reverse 反相(颠倒数组,即第一个元素和最后一个元素互换——)

-shift 出队列(FIFO先入先出)

-slice 截取数组中的子串生成新的数组

-sort 数组元素的排序

-splice 从数组中指定元素起删除指定个数的元素或者删除指定元素

-unshift 从数组头部插入一个元素

-toString 将数组转换为字符串

+Boolean 布尔数

-new Boolean 新建布尔型对象

-toString 将布尔型对象的值转换成字符串值

-valueOf 获取布尔型对象的值(返回值为布尔型)

+Color 颜色

-getRGB 获取颜色值的RGB分量(返回值0xRRGGBB)十六进制)

-getTransform 获取颜色值的转换量(返回值cxform型)

-new Color 新建一颜色对象

-setRGB 设置颜色值的RGB分量(参数为0xRRGGBB十六进制)

-setTansform 设置颜色值的转换量(参数为cxform型)



+Date 时间和日期

-getDate 获取当前日期(本月几日)

-getDay 获取今天是星期几(0-Sunday,1-Monday------)

-getFullYear 获取当前年份(四位数字)

-getHours 获取当前小时数(24小时制,0~23)

-getMiliseconds 获取当前毫秒数

-getMinutes 获取当前分钟数

-getMonth 获取当前月份(注意从0开始:0-Jan,1-Feb---)

-getSeconds 获取当前秒数

-getTime 获取UTC格式的从1970.1.10:00以来的秒数

-getTimezoneoffset 获取当前时间和UTC格式的偏移值(以分钟为单位)

-getUTCDate 获取UTC格式的当前日期(本月的几号)

-getUTCDay 获取UTC格式的今天是星期几(0-Sunday,1-Monday------)

-getUTCFullYear 获取UTC格式当前年份(四位数字)

-getUTCHours 获取UTC格式当前小时数(24小时制,0~23)

-getUTCMiliseconds 获取UTC格式当前毫秒数

-getUTCMinutes 获取UTC格式当前分钟数

-getUTCMonth 获取UTC格式当前月份(注意从0开始:0-Jan,1-Feb---)

-getUTCSeconds 获取UTC格式当前秒数

-getYear 获取当前缩写年份(当前年份减去1900)

-new Date 新建日期时间对象

-setDate 设置当前日期(本月的几号)

-setFullYear 设置当前年份(四位数字)

-setHours 设置当前小时数(24小时制,0~23)

-setMiliseconds 设置当前毫秒数

-setMinutes 设置当前分钟数

-setMonth 设置当前月份(注意从0开始:0-Jan,1-Feb---)

-setSeconds 设置当前秒数

-setTime 获取UTC格式的从1970.1.10:00以来的秒数

-getUTCDate 获取UTC格式的当前日期(本月的几号)

-getUTCDay 获取UTC格式的今天是星期几(0-Sunday,1-Monday------)

-getUTCFullYear 获取UTC格式当前年份(四位数字)

-getUTCHours 设置UTC格式当前小时数(24小时制,0~23)

-getUTCMiliseconds 设置UTC格式当前毫秒数

-getUTCMinutes 设置UTC格式当前分钟数

-getUTCMonth 设置UTC格式当前月份(注意从0开始:0-Jan,1-Feb---)

-getUTCSeconds 设置UTC格式当前秒数

-getYear 设置当前缩写年份(当前年份减去1900)

-toString 将日期时间值转换成 日期/时间串值

-UTC 返回指定的UTC格式日期时间的固定时间值

+Key 键盘

-BACKSPACE Backspace键

-CAPSLOCK CapsLock 键

-CONTROL Ctrl键

-DOWN 下方向键

-DELETEKEY Delete(Del)键

-END End键

-ENTER Enter(回车)键

-ESCAPE Esc键

-getAscii 获取最后一个按下或松开的键的对应字符的ASCⅡ码

-getCode 获取最后一个被按下的键的键盘扫描码

-HOME Home 键

-INSERT Insert(Ins)键

-isDown 当指定键被按下时返回True值

-isToggled 当指定键被锁定时返回True值

-LEFT 左方向键

-PGDN PageDown(PGDN)键

-PGUP PageUp(PGUP)键

-RIGHT 右方向键

-SHIFT Shift键

-SPACE 空格键

-TAB Tab键

-up 上方向键





+Math 数学函数

-abs abs(n) 取n的绝对值

-acos acos(n) n的反余弦(返回值单位:弧度)

-asin asin(n) n的反正弦(返回值单位:弧度)

-atan atan(n) n的反正切(返回值单位:弧度)

-atan2 atan2(x,y) 计算x/y的反正切

-ceil ceil(n) 取靠近n的上限的整数(向上取整)

-cos cos(n) 取n的余弦(n的单位:弧度)

-E Euler(欧拉) 指数(约为2.718)

-exp 指数

-floor floor(n) 取靠近n的下限整数(向下取整)

-LN10 ln10(约等于2.302)

-LN2 ln2(约等于0.693)

-log 取自然对数(e为底)

-LOG10E 以10为底,取E的对数(约等于0.434)

-LOG2E 以2 为底,取E 的对数(约等于1.443)

-max 返回两参数中的最大值

-min 返回两参数中的最小值

-PI 圆周率(约等于3.14159)

-pow pow(x,Y) x的y次方

-random 产生0-1间的随机数

-round 四舍五入取整

-sin sin(n) 取n的正弦(n的单位:弧度)

-sqrt 开根号

-SQRT1_2 0.5开根号(约等于0.7070)

-SQRT2 2开根号(约等于1.414)

-tan tan(n) 取n的正切(n的单位:弧度)





+MovieClip 电影剪辑

-attachMovie 绑定一个电影,产生一个库中电影剪辑的实例

-dupicateMovieClip 复制当前电影剪辑为新的电影剪辑

-getURL 使浏览器浏览指定页面

-gotoAndPlay 跳转到指定帧并播放

-gotoAndStop 跳转到指定帧并停止播放

-hitTest 测试一个点或者MC是否同另一个交叉

-loadMovie 导入一个外部电影到指定层

-loadVariables 导入外部文件中的变量值

-localTOGlobal

-nextFrame 下一帧

-prevFrame 前一帧

-removeMovieClip 删除用duplicateMovieClip创建的电影剪辑

-startDrag 开始拖动电影剪辑

-stopDrag 停止拖动电影剪辑

-unloadMovie 卸载由loadMovie导入的电影





+Mouse 鼠标

-hide 隐藏光标

-show 显示光标



+Number 数值

-MAX_value FLASH5 所允许的最大数值1.79769313486231 e 308

-MIN_value JLASH5 所允许的最小数值5e -324

-NaN 是否为非数值(Not a Number)

-NEGATIVE_INFINITY 是否为负数

-new Number 新建数值对象

-POSITVE_INFINITY 是否为正数

toString 将数值转换成字符串





+Object 对象

-new Object 新建对象

-toString 转换对象为字符串

-valueOf 返回对象的值



+Selection 选择区

-getBeginIndex 获取可编辑文本区的起始位置,-1表示无可编辑文本区

-getCareIndex 获取当前的编辑位置,-1表示没有可编辑文本区

-getEndIndex 获取可编辑文本区的结束位置,-1表示无可编辑文本区

-getFocus 获取当前的激活文本区

-setFocus 设置当前的激活文本区

-setSelection 设置可编辑文本的起始位置和终止位置



+Sound 声音

-sttachSound 绑定库中的一个声音

-getPan 获取声音的混音值

-getTransform 获取当前声音的变换量(返回值类型:sxform)

-getVolume 获取当前声音的音量(百分比)

-new sound 新建声音对象

-setPan 设置声音的混音值

-setTransform 设置当前声音 的变换量(参数类型:sxform)

-setVloume 设置当前声音的音量(百分比)

-start 开始播放当前声音

-stop 停止播放当前声音



+String 字符串

-charAt 在指定的索引表中返回一个字符

-charCodeAt 在指定的索引表中返回一个字符的代码

-conxat 联结全并多个字符串

-fro 电影剪辑harcodew从字符代码组构造出一个新的字符串

-indexOf 在字符串中寻找子串,返回子串起始位置或中-1(-1表示未找到)

-lastIndexOf 在字符串中寻找子串,返回子串终止位置或中-1(-1表示未找到)

-length 返回字符串的长度

-new String 新建字符串对象

-slice 返回字符串中指定截取的子串

-split 根据限定符将字符串转换成一个数组

-substr substr(start,length) 返回从start开始,共length长的子串

-substring substring(indexA,indexB) 返回indexA..indexB之间的子串

-toLowerCase 将字符串中的大写字符全部转换成小写

-toUpperCase 将字符串中的小写字符全部转换成大写



+XML 可扩充性标记语言

-appendChild 添加一个子节点到指定的XML元素

-attributes XML元素的属性数组

-childNodes 一个XML元素的子节点数组

-cloneNode 克隆(复制)当前节点

-createElement 新建一个新的XML元素

-createTextNode 新建一个新的XML文本节点

-firstChild 返回当前XML节点的第一个子节点

-hasChildNodes 当前XML节点是否有子节点(返回True有子节点/flash则无)

-insertBefore 在一个指定的XML元素的子节点前插入一个新的子节点

-lastChild 返回当前XML节点的最后一个子节点

-load 从指定的URL把XML元素导入FLASH中

-loaded 当XML元素导对象

-nextSibling 当前XML节点的下的一个节点

-nodeName 返回当前XML节点的名字

-nodeType 返回当前XML节点的类型(1-元素,3文本)

-nodevalue 返回当前XML节点的值(text型返回文本)

-onLoad 当导入或发送同时导入时触发事件

-parentNode 返回当前XML节点的父节点

-parseXML 将XML字符转换成XML对象

-previousSibling 当前XML节点的前一个节点

-removeNode 从XML文本中删除节点

-send 从Flash中把一个XML元素发送到指定的URL地址

-sendAndLoad 从Flash中把一个XML元素发送到指定的URL地址同时导入XML结果

-Status

-toString 把XML对象转换为XML字符串表达

-xmlDecl



+XMLSocket XML套接口

-close 关闭一个XML套接口

-cnnect 连接一个XML套接口,指定URL,并定义其端口号

-newXMLSocket 建立一个新的XML套接口

-onClose 关闭XML套接口时触发事件

-onConnect 连接XML套接口时触发事件

-onXML 从服务器上获取XML时触发事件

-send 发送XML给服务器



1.点语法

在ActionScript中,点(.)被用来指明与某个对象或电影剪辑相关的属性和方法.它也用于标识指向电影剪辑或

变量的目标路径.点语法表达式由对象或电影剪辑名开始,接着是一个点,最后是要指定的属性,方法或变量.例

如,_X电影剪辑属性指出编辑区中电影剪辑的X轴位置.表达式andy电影剪辑._x是指电影剪辑实例andy电影剪辑

的_X属性.

又例如,test1是在电影剪辑form中设置的一个变量,而form又是嵌套在电影剪辑cup中的电影剪辑.表达式cup.from.test1=true

的作用是设置实例form的submit变量的值为true.

表达一个对象或电影剪辑的方法遵循相同的模式.例如,testMovie电影剪辑的play方法移动testMovie的时间播

放头,就像下面的语句:

testMovie.play();

点语法使用两个特殊的别名:_root和_parent.别名_roof是指主时间轴.可以使用_roof别名创建一个绝对路径.

例如,下面的语句调用主时间轴中电影剪辑functions的builGameBoard函数:

_roof.functions.buildgameBoard();

可以用别名_parent引用嵌套当前电影剪辑的电影剪辑.也可以用_parent创建一个相对目标路径.例如,如果电影

剪辑dog被嵌套在电影剪辑animal之中,那么,在工作区符号dog上的下列语句告诉animal停止播放:

_parent.stop();



2.斜杠语法

FLASH3和4使用斜杠语法指出电影剪辑或变量的目标路径.FLASH5播放器仍然支持这种语法,但不推荐使用.在斜

杠语法中,斜杠被用来取代点,有以标明电影剪辑或变量的路径.要指出一个变量,可以在变量前加上冒号,如下

所示:

myMovieClip/childMovieClip:myVariable

可以用点语法取代上述斜杠语法表示的目标路径:

myMovieClip.childMovieClip.myVariable

斜杠语法在telltarget动作中使用最普遍,但这种动作在FLASH5中已不再推荐使用.



3.大括号

ActionScript语句用大括号({}分块,如下面的脚本所示:

on(release) {

myDate = new Date();

currenMonth=myDate.getMonth();

}



4.分号

ActionScript语句用分号结束,但如果省略语句结尾的分号,FLASH仍然可以成功地编译脚本.例如,下面的语句

用分号结束:

myDate=new Date();

currenMonth=myDate.getMonth();

同样的语句也可以不写分号:

myDate=new Date() currenMonth=myDate.getMonth();



5,圆括号

定义一个函数时,要把参数放在圆括号中:

function myFunction (name,age,reader) {





调用一个函数时,也要把要传递的参数放在圆括号中:

myFunction ("Steve",10,true);

圆括号也可以用来改变ActionScript的优先级,或使自己编写的ActionScript语句更容易阅读.

也可以用圆括号来计算点语法中点左边的表达式.例如,在下面的语句中,圆括号使表达式new color(this)得到

计算,并创建了一个新的颜色对象:

onClipEvent(enterFrame) {

(new Color(this).setRGB(0xffffff)};

}

6.字母的大小写

在ActionScript中,只有关键字区分大小写.对于其余的ActionScript,可以使用大写或小写字母.例如,下面的语

句是等价的:

cat.hilite=true;

CAT.hilite=true;

但是遵守一致的大小写约定是一个好的习惯.这样,在阅读ActionScript代码时更易于区分函数和变量的名字.如

果在书写关键字时没有使用正确的大小写,脚本将会出现错误.当在Action面板中启用彩色功能时,用正确的大小

写书写的关键字以蓝色显示.



7,注释

需要记住一个动作的作用时,可在Action面板中使用comment语句给帧或按扭动作添加注释.如果在协作环境中工

作或给别人提供范例,添加注释有助于别人对编写的脚本的理解.

在Action面板中选择comment(注释)动作时,字符//被插入到脚本中. 如果在创建脚本时加注释,即使是简单的脚

本也易于理解:

on(release) {

//建立新的日期对象

myDate=new Date();

currentMonth =myDate.getMonth();

//把用数字表示的月份转换为文字表示的月份

monthName=calcMonth(currentMonth);

year=myDate.getFullyear();

currentDate=myDate.gerDate();

}

在脚本窗口,注释内容用粉红色显示.它们的长度不限,且不影响导出文件的大小.



8.关键字

ActionScript保留一些单词,专用与一语言之中.因此,不能用这些保留字作为变量,函数或标签的名字.下面列出

了ActionScript中所有的关键字:

ActionScript中所有的关键字:break for new

var continue function

return void delete

if this while

else in typeof

with

要了解更多关于专用关键字的信息,请参阅ActionScript词典中相关的词条.



9.常数

常数是其值永不改变的属性.常数大写字母列于Action面板和ActionScript词典中.例如,常数BACKSPACE,ENTER,

QUOTE,RETURN,SPACE和TAB是key对象的属性,指键盘上的键.要测试用户是否在按Enter键,使用下面的语句:

if(keycode()==key.ENTER) {

alert="Are you ready to play?"

control电影剪辑.gotoAndStop(5);

}








回想从前,网络上动画的表现形式大概只有GIF。而GIF又有制作复杂与最高256色限制的缺点,不被广泛采用。Flash的横空出世,改变这一切,使网络这个动画世界便变得异常丰富多彩。你也想要制作出炫丽夺目的Flash动画?来吧,跟着小米试试从0开始Flash。

公欲善其事,必先利其器。首先,让我们选择一款适合自己的Flash制作利器。Adobe的LiveMotion虽然出自“名家”之手,但比较专业,使用的人不多。而Macromedia公司的Flash,容易上手,可以轻易制作出各种动画效果。就是它了,以后,小米将会以Macromedia Flash MX(以下简称Flash)为例,为大家揭开Flash制作之迷。

一、倒计时制作。

让我们从制作倒计时的例子开始,慢慢了解Flash的功能、特性以及动画制作过程。

打开Flash,它已经为我们新建了一个文件。但是,这个文件的大小、播放速度往往不符合我们的要求,所以,我们首先要对它进行调整。这时,我们就需要用到Modify(更改)菜单里的Document(文档)项。如图一。

大家还可以看到它的快捷键是Ctrl+J。菜单包括了Flash里几乎所有的操作。点击后,出现Document Properties(文档属性)对画框。如图二。

在这里,您可以对自己的动画进行适当的设置。我们把动画的长宽都设置为400px,背景色为黑色。把Frame Rate(播放速度)设置成1fps(1帧/秒)。

小米想对Frame Rate进行一下说明:我们把动画中一个个静止的画面称作为帧。而动画,就是根据视觉暂留的原理,由一个个的帧组成的。一般情况下,每秒播放的帧数越多,动画的连续性就越好,但同时,动画的容量也越大。在制作一般的Flash动画时,12fps是比较合适的,少于12fps,会给人不连接的感觉,多于12fps又会使动画体积增大。当然,也有特殊情况,例如,在制作倒计时的时候,由于对播放的连续性要求并不是很高,所以,为了尽量减小体积,小米把播放速度设置成了1fps。

按OK,一个背景为黑色、大小为400px*400px、播放速度为1fps的动画场景就建好了。为说明方便,在这里,小米把界面上的各个部分的名称标出,如图三。

首先,我们来画一个圆。第一步,把“描边色”设置成浅蓝色,背景色设置成无。接着,通过属性面版(底部的那个)设置线粗为4px。面板最需要的作用就是显示和设置属性。

选工具栏中的画圆工具。Flash中,基本图形,如矩形、圆的绘制工作,就可以交给工具栏来完成。然后,在工作区按下鼠标左键不放,拖动。咦?怎么不圆?不要放开鼠标,同时按下键盘上的Shift键试试?圆了吧。在Flash里,要画什么正的东东,像圆啊、正方形啦一类的,就需要用到Shift键。调整好大小,放开鼠标左键。如果觉得圆不够正中,还可以用选择工具(工具栏左上第一个工具)拖动,直到满意为止。

然后,我们选择工具栏中的文字工具。属性面板里,就出现了对文字属性的调整项。由于小米采用了800乘以600的分辨率,所以,有些文字属性选项显示不完整。这类问题,我们可以通过把属性栏“拖”出来来解决。把鼠标放到相应的面板左边,按住鼠标左键一“拖”,瞧,相应的属性栏就“浮”在了界面上。如图四。

不过,用完了以后可得记得放回去哟,要不然,过不了多久,你的操作界面就会变得凌乱不堪了。(这个跟理房间大概差不多:-)

然后,我们对文字进行设置。把字体设置成Arial Black,字号设置成96(最大),颜色为蓝色。如图五。(可以依据自己的喜好作合适的设置。)

在工作区内输入一个数字“1”。如图六。不够大?这个不是问题。因为这个“1”相当于一个矢量图形,可以无限放大或缩小而不影响其质量。

矢量图形区别于位图,它以图形的特征转化为数据信息保存于文件中,这就相当于知道了一个图形的解析式,在不改变精细程度的条件下,想把它作成多大的就可以作成多大。而位图则记录图形上每一个点所包含的颜色信息。极细小的点(红、绿、蓝)混在一起,就可以表现出各种图像。但由于你把图象放大时,点也会变大,所以,图像就会变得粗糙。如果你注意观察过路边的大型广告牌,你就会发现类似的现象了。

    

好了,用选择工具(左边第一个)点中要改变大小的对象——“1”字,点击工具栏上的自由变化工具(左边第六个)。出现了六个操作柄(空心矩形)。用鼠标点中其中一个操纵柄(注意,一定要点中哦),然后拖动,就可以自由改变图形的大小了。如图七。

这样子,一个帧就基本完成了。而小米前面说过,动画是由一个个帧组成的。那么,我们是不是马上建立第二、第三个帧……来形成动画呢?别急。在Flash里,通常把不同的对象(前面我们所画的一个圆是一个对象,“1”也是一个对象)转化成不同的”Symbol”(“符号”)。Flash中,符号共有图象、按钮和动画三种。而一个图形符号,就像是一张剪纸,它是独立的,你可以随意移动它,使之形成动画。当然,在制作倒计时,因为每帧都是独立的,所以,即使不把对象转换成符号也可以。但是,在自动有“移动”操作的动画时,把对象转换成符号就非常有必要了。符号还有可以反复利用等优点。所以,为了养成一个良好的习惯,我们还是把“1”转换成对象吧。而对于圆,相当于一个背景的作用,绝对不会有动画效果,也就没有必要转换了。

用选择工具选中“1”(出现矩形边框),用鼠标右击,选择“Covert to Symbol”(转换成符号)。在出现的窗口中,把“Name”(名称)设置成“Graph 1”,“Behavior”(本意为“行为”,在这里可以表示“类型”)中选择“Graphic”(图形),“Registration”(区域)是Flash MX里新增的一个功能,可以选择图形在符号中的位置,在这里我们选择居中,即点中中间的小矩形,使之反白显示,点“OK”。如图八。

咦?怎么没有变化?呵呵,其实变化是有的,仔细观察,“1”中心的空心圆里已经出现了一个“十”字。

倒计时当然不可以只有一个数字,我们要做一个从n到0的倒计时,就需要有n+1个符号,分别放0到n这n+1上数字。我们可以再利用上述方法制作好数字,然后转换。当然还有更快的方法。

令n=5,考虑到这六个数字有一定的相似性,我们可以通过复制符号来实现。这时,我们就需要用到一个叫“Library”(库)的“Panel”(面板),通过菜单“Window/Library”或者F11键可以打开库面板。这时,就可以看到刚才转换的“Graph 1”组件。用鼠标在“Graph 1”上右击,点击Duplicate(复制),如图九。然后,看到类似于图七的对话框,把名称设置成“Graph 0”“Graph 2”“Graph 3”……这时,所有图形符号里的内容都是一样的(那是当然的,要不然就不叫复制了:)。双击“Graph 0”左边的矩形图(注意不要点到文字,或者是改名操作)。工作区转到了符号编辑状态。然后,直接双击“1”,改成“0”,然后在反白区以外处点击。那么,我们要如何再恢复到Scene编辑状态呢?点击时间栏左下方的“Scene 1”即可。依次类推,完成Graph 2至Graph 5的制作。

好了,以上动画制作的准备工作,接着,我们就可以把这些素材做成一个个的帧,形成动画了。

首先,在“Layer 1”对应的时间栏第二帧上右击,选择“Insert Keyframe”(插入)关键帧。如图十。也可以把一到六帧全部都选中,然后按F6键。这时候,如果预览的话,只能看到一张“静止”的图象,因为每一个键的内容都是一样的。

选择第一帧,把工作区的“1”删掉。别担心,因为我们前面已经把它转换成了符号,所以,它仍然被保留在符号库里。把“Graph 5”从符号库里拖出来。我们希望把每个数字都放在场景的中心,一方面使之看起来中规中矩,另一方面,利于对齐。这时我们可以利用“Align Panel”(对齐面板)。点击菜单“Window/Align”,在出现的面板中,选中右边的“To stage”(相对于场景),然后分别点击第一、第二排的第二个按钮。用同样的方法,完成2至6帧的制作。

OK。按Ctrl+S,保存一下这个文件,然后按Ctrl+Enter进行预览。一个倒计时已经完成了。

小结:或许这个动画不是很高明,但小米想,最重要的是我们已经了解了动画是怎样产生的:一个个帧连续变化的帧,形成动画。如果我们让每一个帧里的东东位置稍微发生变化,就会让人感觉它移动起来了。这样的效果,我们将在今后的日子里逐渐接触。

0

评论Comments

日志分类
首页[30]
苹果[8]
设计[11]
Internet[3]
E-mail & Mes[1]
Mac & PC[1]
感悟与心得[5]
Health[1]