小飞侠 2008-4-11 16:57
FLASH语法合集之一、內置指令(ACTIONS)(内含实例代码原文件)方便大家学习参考
[size=5][b]一、內置指令(ACTIONS)[/b][/size]
內置指令实例源代码合集下载!下面每实例都有源代码下载,怕麻烦的话可以下这个合集,嘻嘻!
**** Hidden Message *****
[size=5][b]01.循环控制[/b][/size]
[size=4][b]BREAK[/b][/size]
break 从循环/区块中跳出
快捷键:ESC+b+r
功能说明: 用来中断循环的进行,以进行循环外的下一行程序,通常与循环(for,for...in,do...while或while)一起搭配使用,尤其像使用嵌套循环(nested loops)的时候,可减少不必要的循环运算。
break是终止并跳出while或for的循环运算,继续执行循环外的下一行程序;continue可终止while 或for循环中continue后面所有表达式(statements)的执行,并继续执行while 或for的下一个循环运算。
**** Hidden Message *****
[size=4][b]CONTINUE[/b][/size]
continue 从头开始继续执行循环/区块
快捷键:ESC+c+o
功能说明:用来中断目前循环的进行,并继续执行循环中的下一个循环,通常与循环(for,for...in,do...while或while)一起搭配使用,尤其像使用嵌套循环(nested loops)的时候,可减少不必要的循环运算。
**** Hidden Message *****
[size=5][b]02.函数控制[/b][/size]
[size=4][b]CALL[/b][/size]
call 调用帧的程序
快捷键:ESC+c+a
功能说明:调用某特定帧并执行的frame script,其作用类似调用子程序。
语法: call (frame)
frame: 被调用的帧,可以是帧的名称或帧的编号。
注意:1) 当script内执行到call指令的时候,程序会从原本的script跳至指定的帧,并执行该帧的script,执行完毕后在跳回原本的script继续执行。
2) 程序跳跃的时候,时间轴的播放头(playhead)并不会真的跳到call指令所指定的frame。
3) 被调用的frame script 一旦执行完毕,script里的局部变量local variables 就不复存在。
4) flash 5 里已经不建议使用call指令,并且建议使用function指令的功能代替原有的call指令。
**** Hidden Message *****
[size=4][b]FUNCTION[/b][/size]
function 定义函数
快捷键:ESC+f+n
功能说明:制定新的函数,把使用频繁的表达式定义成一个新的函数,当成一个公式或命令,以便反复应用。
语法: function funcitonname([argument0,argument1...argumentN]){
statement(s) }
function([argument0,argument1...argumentN]){
statement(s) }
functionname: 新函数的名称
argument: 新函数的自变量
statement: 新函数的内容
注意: 1) function的自变量 (argument)可以不填,或是使用嵌套结构,也就是说定义的函数中不能再声明其他的函数。
2) function里的表达式(statements)不能使用嵌套结构,也就是说定义的函数中不能再声明其他的函数。
3) 若要返回function值,必须使用return返回值。
4) 表达式(statements)里的变量名称或使用的对象可设定成该函数的自变量。
**** Hidden Message *****
[size=4][b]RETURN[/b][/size]
return 返回数值
快捷键:ESC+r+t
功能说明:从function中将值返回给调用单元,或是从函数与调用单元的回复处理,当执行return的时候,就会把return之后的表达式所得的结果,返回给调用单元。
语法: return[expression]
return;
expression: 表达式
/*多行批注
//单行批注
**** Hidden Message *****
[size=5][b]03.批注[/b][/size]
**** Hidden Message *****
[size=5][b]04.变量设定与删除[/b][/size]
[size=4][b]DELETE[/b][/size]
delete 删除变量/对象
快捷键:ESC+d+a
功能说明:用来删除指定的“变量”或“对象”。变量的定义可以是对象的属性(property),或是一般的变量,或是数组的值。
delete (reference);
reference: 被删除的变量或对象名称
注意: 1) 如果成功地删除reference参数里指定的变量或对象,则返回一个true的值,否则就会返回一个false的值。
2) 如果返回一个false的值,很可能是指定的对象并不存在,或是无法删除这个对象。
3) 无法删除的对象很可能是flash自定义的对象(predefined objects),属性能(properties),或是使用var声明的局部变量。
4) 当delete 运算符把无用的变量或对象删除后,便可以有效率释放内存,达到降低程序对系统的负载。
**** Hidden Message *****
[size=4][b]SET[/b][/size]
set variable 设定变量
快捷键:ESC+s+v
功能说明:用来指定变量的值,把一个值指向特定的变量名称。
语法: variable=expression;
set (variable,expression);
variable: 变量名称
expression: 表达式,也就是指定给变量的值
**** Hidden Message *****
[size=4][b]VAR[/b][/size]
var 声明变量
快捷键:ESC+v+a
功能说明:执行变量声明用。
语法: var variablename1[=value][...variablenameN][=valueN];
variablename: 变量名称
value: 变量的初始值
注意:1)声明变量时var可以省略。如var x=x+10; 可直接写成 x=x+10;
2) 变量可分全局变量(global variable)和局部变量(local variable).
3) 如果是在函数(function)里设定局部变量,必须使用var,否则视为全局变量。而函数里声明的局部变量只在函数里有效。
4)使用call指令调用帧的frame script,script里的变量会被视为局部变量。
5) 无论有没有使用var声明,则其余的变量设定都将视为全局变量
**** Hidden Message *****
[size=5][b]05.重复程序处理[/b][/size]
[size=4][b]DO...WHILE[/b][/size]
do...while 满足条件的重复程序处理
快捷键:ESC+d+o
功能说明:先处理一次{statement}里的程序,并判断是否满足条件,若合乎条件则继续执行,若不合乎条件,则跳出do...while循环,并执行循环外的下一行程序。
语法: do{
statement;
}while(condition);
statement: 表达式,如果condition的条件为真,则处理该表达式
condition: 条件式,若合乎条件则继续执行
比较: do...while, while都是满足条件的重复{}里的程序,两者的差异如下:
1) do...while就算是在没有满足条件的情况下,最少会处理一次{}里的程序,也就是说先执行statement后判断condition
2) while若没有满足 condition的条件,则不执行{}里的程序,也就是说先判断condition后执行statement
**** Hidden Message *****
[size=4][b]FOR[/b][/size]
for 指定次数的重复程序处理
快捷键:ESC+f+r
功能说明:先处理一次{statement}里的程序,并判断是否满足条件,若合乎条件则继续执行,若不合乎条件,则跳出do...while循环,并执行循环外的下一行程序。
语法: for(init;condition;next){
statement; }
init: 循环控制的变量初始值
condition: 条件式,测试是否合乎条件,其值为true 或false
next: 循环控制的变量更新值,每执行一次循环更新一次
比较: for,for...in都是指定次数的重复{}程序处理,两者的差异如下:
1) for循环如果没有在一开始的时候就满足条件,就不会执行{}里的程序。
2) for...in仅对指定对象所有的属性个数执行重复{}程序处理。
**** Hidden Message *****
[size=4][b]FOR...IN[/b][/size]
for...in 对象属性的重复处理
快捷键:ESC+f+i
功能说明:根据对象的所有属性或数组里的元素作重复程序处理。
语法: for(variable iterant in object){
statement;}
variable: 变量名称
object: 被指定的对象名称
statement: 表达式
**** Hidden Message *****
[size=4][b]WHILE[/b][/size]
while 满足条件的重复程序处理
快捷键:ESC+w+h
功能说明:每一次的循环处理,都会先判断是否合乎codition的条件,若合乎条件则执行,若不合乎条件,则跳出while循环,并执行循环外的下一行程序。
语法:while(condition){
statement(s); }
condition: 条件式,若合乎条件则继续执行
statement: 表达式,如果condition的条件为真,则处理该表达式
**** Hidden Message *****
[size=5][b]06.电影短片[/b][/size]
[size=4][b]DUPLICATEMOVIECLIP[/b][/size]
duplicateMovieClip 复制电影短片
快捷键:ESC+d+m
功能说明:主要功能为复制影片对象,复制场景上指定target的instance name,并给复制出来的movieclip一个新的instance name及depth值
。
语法: duplicatemovieclip(target,newinstancename,depth);
target: 原始影片对象的目标路径
newinstancename: 新影片对象的名称
depth: 指定新影片对象在stage的层级
注意: 1)在复制之前,舞台上必须要有一个原始的movieclip,原始的movieclip永远在stage的第0层。
2)复制后的第一个新的movieclip必须被放在不同的层级,否则原有层级的movieclip就会被置换成新的movieclip。
3)movieclip对象上的变量值无法使用duplicatemovieclip复制到新的对象上。
4)电影播放的时候,一旦删除原始的movieclip,则所有已复制的movieclip就会同时全部从stage上删除。
**** Hidden Message *****
[size=4][b]LOADMOVIE[/b][/size]
loadmovie 加载影片到指定的目标
快捷键:ESC+l+m
功能说明:加载外部的swf影片到目前正在播放的swf影片中。
语法:loadmovie(url,target,method);
url: 外部swf影片的路径
target: 目标对象路径
method: 变量数据传送的方式(可以空白)
注意: 1) 使用target的方式加载电影文件之前,舞台上一定要事先放置target所标示的对象(movieclip)。
2) 如果target movie clip被旋转,缩放,变形,则加载后的电影文件也会跟着变动。
3) 加载的target路径如果相同,新加载的动画文件会取代之前加载的动画文件。
4) loadmovie 的好处在于而不用打开另一个flash播放器或跳至另一个新的网页,也就是可以同时使用一个player播放或切换电影文件。
**** Hidden Message *****
[size=4][b]LOADMOVIENUM[/b][/size]
loadMovieNum 加载影片到指定的层级
快捷键:ESC+l+n
功能说明:加载外部的swf影片到目前正在播放的swf影片中。
语法:loadmovienum(url,level,method);
url: 外部swf影片的路径
level: 存放电影文件的层级
method: 变量数据传送的方式
注意: 1) 加载的level层级如果相同,新加载的动画文件会取代之前加载的动画文件。
2) loadmovie 的好处在于而不用打开另一个flash 播放吕或跳至另一个新的网页,也就是可以同时使用一个player 播放或切换电影文件。
**** Hidden Message *****
[size=4][b]REMOVEMOVIECLIP[/b][/size]
removeMovieClip 删除电影短片
快捷键:ESC+r+m
功能说明:主要功能为删除影片对象,把之前使用deplicatemovieclip或attachmovie复制出的instance,从场景上删除。
语法:removemovieclip(target);
target: movie clip instance 的目标路径
注意: 删除的movie clip必须是duplicatemovieclip或attachmovie复制出的instance,一般的movie clip并无法使用removemovieclip从场景上删除。
**** Hidden Message *****
[size=4][b]SETPROPERTY[/b][/size]
setProperty 设定属性
快捷键:ESC+s+p
功能说明:改变instance目前的属性,电影短片(movieclip)在场景上称之为instance,而instance的属性是可以随时修改的,如alpha 透明度,X,Y坐标值,instance的宽度,角度等。
语法:setproperty(target,property,expression);
target: 电影短片对象的目标路径
property: 对象的属性
expression: 对象属性的值
**** Hidden Message *****
[size=4][b]STARTDRAG[/b][/size]
startDrag拖曳电影短片
快捷键:ESC+d+r
功能说明:用来拖曳的instance会跟着鼠标光标的位置移动。
语法:startdrag(target);
startdrag(target,[lock]);
startdrag(target,[lock],[left,top,right,down]);
target: 影片对象的目标路径
lock: 以布尔值(true,false)判断对象是否锁定鼠标光标中心点,当布尔值为true的时候,影片对象的中心点锁定鼠标光标的中心点。
left,top,right,down: 对象在场景上可以拖曳的上下左右边界,当lock为true的时候,才能设定边界的自变量。
**** Hidden Message *****
[size=4][b]STOPDRAG[/b][/size]
stopdrag 停止拖曳电影短片
快捷键:ESC+s+d
功能说明:用来解除鼠标拖曳对象的动作。
语法:stopdrag();
**** Hidden Message *****
[size=4][b]TELLTARGET[/b][/size]
tellTarget 对像目标与层级路径
快捷键:ESC+t+t
功能说明:使用telltarget指出movieclip的时间轴的对应路径,再以表达式(statement)下达控制时间轴的命令。
语法:telltarget(target);{
statement;}
target: movieclip或时间轴的对应路径
statement: 控制时间轴上的程序
注意: 1)telltarget的target自变量可以是对象的路径,如"_root.title.togo"或"/title/logo",表示控制指定的instance里的时间轴;或者是时间轴层级的路径,如"../../../"或"_parent._parent._parent",表示控制指定层级的时间轴。
2)telltarget和with指令非常相似,不同的地方在于telltarget必须使用targetpath指出movieclip的路径,再由过程控制movieclip的时间轴,而且只能控制movieclip。
3)with可以控制objects或movie clips,flash 5以后已经不建议使用telltarget,并建议使用with取代telltarget。
**** Hidden Message *****
[size=4][b]UNLOADMOVIE[/b][/size]
unloadmovie 删除载入的swf影片
快捷键:ESC+u+m
功能说明:使用swf影片加载时指定的目标路径,删除之前加载的swf影片。
语法:unloadmovie(target);
target: swf影片加载时指定的目标路径
**** Hidden Message *****
[size=4][b]UNLOADMOVIENUM[/b][/size]
unloadMovieNum 删除加载的swf影片
快捷键:ESC+u+n
功能说明:使用层级编号,删除之前加载的swf影片。
语法:unloadmovie(level);
level: 存放电影文件的层级
**** Hidden Message *****
[size=5][b]07.条件分支[/b][/size]
[size=4][b]ELSE[/b][/size]
else 条件分支(否则)
快捷键:ESC+e+l
功能说明:if判断式的条件分支之后,需要执行二选一的表达式(statement),可和else并用,若不合乎if判断式的条件,就返回false值,程序就会执行else后程序。
语法:else(statement(s));
statement: 表达式,如果if的条件为假,则处理该表达式
**** Hidden Message *****
[size=4][b]ELSE IF[/b][/size]
else if 多重条件判断(否则如果)
快捷键:ESC+e+l
功能说明:if判断式有多种条件分支,可和else if 并用,else if等于是另一个条件分支的判断式,若不合乎if判断式的条件,就返回false值,程序就会执行else if的程序。
语法:else if(expression){
statement(s);}
condition: 条件式,若合乎条件则继续执行
statement: 表达式,如果condition的条件为真,则处理该表达式
**** Hidden Message *****
[size=4][b]IF[/b][/size]
if 条件判断(如果)
快捷键:ESC+i+f
功能说明:遇到if判断式的时候,若合乎if判断式的条件,则返回true的值,程序就会执行if判断式里的程序,否则就返回false值,并跳过if判断式,继续执行后续的程序。
语法:if(condition){statement;}
condition: if判断式的条件,若合乎条件则执行if条件里的程序
statement: 表达式,满足条件时所执行的程序
**** Hidden Message *****
[size=4][b]未完[/b][/size]
[[i] 本帖最后由 小飞侠 于 2008-4-18 12:16 编辑 [/i]]
小飞侠 2008-4-11 19:59
[size=5][b]08.FLASH影片[/b][/size]
[size=4][b]FSCOMMAND[/b][/size]
FSCommandflash 播放器或外部程序的命令
快捷键:ESC+f+s
功能说明:通过"FS Command"送出字符串给外部的程序语言如javascript,或使用"FS Command"的命令与参数,控制flash player的播放环境。
语法:fscommand(command,arguments);
command: fscommand的命令,或是传递给外部应用程序语言的字符串
arguments: fscommand命令的自变量,或是传递给外部应用程序语言的字符串
Flash Player可用的FS Command指令:
1) Fullscreen
功能:当参数为true时,以全屏幕的方式播放flash动画,播放的时候,看不到flash player的边框,画面自动塞满整个屏幕。
当参数为false时,以一般状态的方式播放flash动画。
2) Allowscale
功能:当参数为true时,flash动画的画面大小,随着flash player窗口的大小等比例缩放,也就是可以看到flash动画所有的场景内容。
当参数为false时,不随着播放器窗口的大小,调整flash动画的画面大小,当播放器的窗口小于动画的画面时,画面边缘会被切掉。
3) Showmenu
功能:当参数为true时,在播放的时候,在flash动画影片上,按下鼠标右键,会找开播放菜单。
当参数为false时,在播放的时候,在flash动画影片上,按下鼠标右键,不会显示播放菜单。
4) Trapallkeys
功能:当参数为true时,执行动画的时候,除了动画里所有的程序用的按键之外,锁定键盘上其余所有的按键。
当参数为false时,执行动画的时候,不锁定flash player默认的功能键。
5) Exec
功能:当参数为可执行文件的文件名及其所在的文件路径时,在播放的同时,可利用这个指令,打开可执行文件,例如 MS-Windows 下的"notepad.exe"记事本,"explorer.exe"资源管理器。
6) Quit
功能:结束播放,并关闭flash player窗口。无参数设定。
**** Hidden Message *****
[size=4][b]TOGGLEHIGHQUALITY[/b][/size]
toggleHighQuality
快捷键:ESC+t+q
功能说明:打开或关闭图形的反锯尺功能,在一般状态下,flash 5的"Antialias"默认为打开状态,每执行一次toggleHighQuality,就会关闭或再度打开反锯尺的功能。
语法:toggleHighQuality();
注意:如果画面上同时有很多对象正在变化,关闭反锯齿功能可以降低flash player 的loading,电影播放的速度就会加快。
**** Hidden Message *****
[size=5][b]09.传值与URL指向[/b][/size]
[size=4][b]GETURL[/b][/size]
getURL 加载外部的变量
快捷键:ESC+l+v
功能说明:打开特定的网页,或执行网络上特定的程序,也就是说给予一个URL网址指向。
语法:getURL(url,window,method);
url: 网络上文件数据的路径
window: 浏览器打开新网页的方式,或是网页的框架(frame)名称
method: 变量数据传递的方式
window 自变量可使用的参数如下:
1)_self 作用:在原浏览器窗口中显示超级链接的结果,如果是嵌套框架的网页格式,会在原有的框架页内显示超级链接的结果。
2)_blank 作用:打开一个新的浏览器窗口,并显示超级链接的结果。
3)_parent 作用:如果是嵌套框架的网页格式,可从下一层的框架,回到上一层框架,并显示超级链接的结果。
4)_top 作用:以浏览器的全窗口显示超级链接的结果,如果是嵌套框架的网页格式,则框架就会消失。
5)framename 作用:自设的框架的名称。
method window 自变量可使用的参数如下:
1)Don't Send 作用:不要送出变量。
2)GET 作用:以“GET”模式传送变量。传送时变量会显示在URL后方并随着URL送出,一次传送少数变量数据的时候使用。
3)POST 作用:以“POST”模式传送变量,变量和URL以分开的HTTP header送出,在传送长字符串变量数据的时候使用。
**** Hidden Message *****
[size=4][b]LOADVARIABLENUM[/b][/size]
loadVariableNum 加载外部的变量
快捷键:ESC+v+n
功能说明:加载电影文件外部的变量到目前正在播放的swf影片中。
语法:loadvariablenum(url,level,method);
url: 存放变量的文件路径
level: 加载的层级
method: 变量数据传送的方式
注意: 1)存放变量的数据文件格式,可以是server端的程序语言如ASP,PHP,或CGI产生的文本文件。
2)文本文件里变量名称与变量的写法如下:
name=Indy+Jones&age=30&sex=male
**** Hidden Message *****
[size=4][b]LOADVARIABLES[/b][/size]
loadmovie 加载外部的变量
快捷键:ESC+l+v
**** Hidden Message *****
[size=5][b]10.帧_场景控制[/b][/size]
[size=4][b]GOTOANDPLAY[/b][/size]
gotoAndPlay 跳至指定的帧并播放
快捷键:ESC+g+p
功能说明:命令时间轴上的播放头(playhead)跳至特定场景的帧编号,并从该帧开始播放。
语法:gotoandplay(scene,frame);
scene: 场景名称,可以空白不填
frame: 可以是帧编号,帧名称,或是表达式(expression)
注意: 1) scene 自变量可以不填
2) 如果没有scene自变量,则表示从目前的场景执行 gotoandplay(), 例如
gotoandplay(25),表示跳至目前场景的第25帧 (frame)。
3) 如果是电影短片(movie clip)里的帧,可使用tellTarget指定路径,5。0版本以后可使用 _root, _parent 指定对象的时间轴,例如 _root.gotoandplay(20)表示跳至场景时间轴的第20帧开始播放。
**** Hidden Message *****
[size=4][b]GOTOANDSTOP[/b][/size]
gotoAndStop 跳至指定的帧并停止
快捷键:ESC+g+s
功能说明:命令时间轴上的播放头(playhead)跳至特定场景的帧编号,并停在该帧。
语法:gotoandstop(scene,frame);
scene: 场景名称,可以空白不填
frame: 可以是帧编号,帧名称,或是表达式(expression)
注意: 1) scene 自变量可以不填
2) 如果没有scene自变量,则表示从目前的场景执行 gotoandstop(), 例如
gotoandstop(25),表示跳至目前场景的第25帧 (frame)。
3) 如果是电影短片(movie clip)里的帧,可使用tellTarget指定路径,5。0版本以后可使用 _root, _parent 指定对象的时间轴,例如 _root.gotoandplay(20)表示跳至场景时间轴的第20帧开始播放。
**** Hidden Message *****
[size=4][b]IFFRAMELOADED[/b][/size]
ifFrameLoaded 指定的帧是否已经加载内存
快捷键:ESC+i+l
功能说明:检查指定的帧是否已经加载内存,如果已经加载内存,则执行{}里的表达式(statement)。
语法:ifframeloaded(scene,frame){
statement;}
scene: 场景名称,可以空白不填
frame: 可以是帧编号,帧名称,或是表达式(expression)
注意: 1) scene 自变量可以不填
2) 如果没有scene自变量,则表示检查目前场景的frame。
3) 5.0版以后增加了"_frameloaded" 属性。
4) _frameloaded 可搭配if,else使用,但无法指定特定的帧。
5) ifframeloaded 无法在{}里使用else,但可指定特定的帧。
**** Hidden Message *****
[size=4][b]NEXTFRAME[/b][/size]
nextframe 跳至下一个帧并停止
快捷键:ESC+n+f
功能说明:命令时间轴上的播放头(playhead)跳至下一个frame,并停在该帧。
语法:nextframe();
注意: nextframe()里的自变量可以填入数值,如nextfrmae(13),表示停在从目前帧往下第13帧。
**** Hidden Message *****
[size=4][b]NEXTSCENE[/b][/size]
nextScene 跳至下一个场景并停止
快捷键:ESC+n+s
功能说明:命令时间轴上的播放头(playhead)跳至下一个场景,并停在该场景的第一帧。
语法:nextscene();
**** Hidden Message *****
[size=4][b]PLAY[/b][/size]
play 开始播放
快捷键:ESC+p+l
功能说明:命令时间轴上的播放头(playhead)从目前的帧开始播放。
语法:play();
**** Hidden Message *****
[size=4][b]PREVFRAME[/b][/size]
prevFrame 跳至上一个帧并停止
快捷键:ESC+p+f
功能说明:命令时间轴收的播放头(playhead)跳至上一个frame,并停在该帧。
语法:prevframe();
注意: prevframe() 里的自变量可以填入数值,如prevframe(5);,表示停在从目前帧往上的第5帧。
**** Hidden Message *****
[size=4][b]PREVSCENE[/b][/size]
prevScene 跳至上一个场景并停止
快捷键:ESC+p+s
功能说明:命令时间轴上的播放头(playhead)跳至上一个场景,并停在该场景的第一帧。
语法:prevscene();
**** Hidden Message *****
[size=4][b]STOP[/b][/size]
stop 停止播放
快捷键:ESC+s+t
功能说明:命令时间轴上的播放头(playhead)停在目前的帧。
语法:stop();
**** Hidden Message *****
[size=5][b]11.载入外部程序[/b][/size]
[size=4][b]INCLUDE[/b][/size]
include 从外部加载 ActionScript
快捷键:ESC+i+n
功能说明:从外部加载flash的actionscript,根据加载的位置,成为电影文件里的frame script,button script,或是clip script的一部分。
语法:#include"filrname.as";
filename.as: 外部文件的名称,扩展名建议使用".as"
注意:1) 存放actionscrip的文件,扩展名不一定要用".as",只要是纯文本格式的文件,就可以加载。
2) 在publish,export或test电影的时候,如果程序用到include指令,flash会在输出的同时一并检查外部的文件,如果文件不存在,output窗口就会出现错误信息。
**** Hidden Message *****
[size=5][b]12.对象制作[/b][/size]
[size=4][b]NEW[/b][/size]
new 制作对象
功能说明:建立一个已存在对象的instance,并自定义instance的对象类型。
语法:new constructor();
constructor: 已存在的对象或function名称,以及给予对象的新定义
**** Hidden Message *****
[size=4][b]THIS[/b][/size]
this 指定对象本身
快捷键:ESC+g+p
功能说明:this的性质属于关键词,表示对象本身,用来参考script所在的对象。
语法:this
**** Hidden Message *****
[size=4][b]WITH[/b][/size]
with 默认对象
快捷键:ESC+w+l
功能说明:使用with指令默认对象,则with指令内的程序,一旦遇到跟默认的对象有关的属性或子对象,就可以省略默认对象的路径与名称。
语法:with(object){
statement(s);}
object: 默认的对象名称,对象可以是flash内置的对象,也可以是自定义的对象或instance
statement: 控制默认对象的程序或指令
**** Hidden Message *****
[size=5][b]13.事件处理程序[/b][/size]
[size=4][b]ON[/b][/size]
on(mouseEvent)鼠标事件处理程序
快捷键:ESC+o+n
功能说明:on是用来设定场景上按钮的鼠标/键盘事件处理程序,这个指令只能用在场景上的button
instance。
语法:on(mouseEvent){
statement;}
mouseevent: 鼠标或键盘事件
statement: 事件发生时执行的表达式
注意: 一次可设定多个鼠标事件,但只能一次设定一个键盘按键作为键盘事件。
以下是事件的含义:
鼠标事件: 含义:
press 按下鼠标键
Release 放开鼠标键
Release Outside 在按钮设定的感应区范围外放开鼠标键
Roll Over 当鼠标光标移入按钮的感应区
Roll Out 当鼠标光标移开按钮的感应区
Drag Over 按住鼠标左键不放,再将鼠标光标移入按钮的感应区
Drag Out 按住鼠标左键不放,再将鼠标光标移出按钮的感应区
Key Press 按下键盘上某个特定按键
**** Hidden Message *****
[size=4][b]ONCLIPEVENT[/b][/size]
onClipEvent 影片事件处理程序
快捷键:ESC+o+c
功能说明:onclipevent是用来设定场景上影片对象的影片事件处理程序,这个指令只能用在场景上的movie clip instance。
语法:onclipevent(movieEvent){
statement;}
movieevent: 影片事件
statement: 事件发生时执行的程序
以下是Clip Event事件的含义:
Clip事件: 含义:
Load Movie Clip被加载时执行程序(只执行一次)
EnterFrame 播放到Movie Clip所在图格时执行程序(反复执行)
Unload Movie Clip被释放时执行程序
Mouse down 按下鼠标左键时执行程序
Mouse up 放开鼠标左键时执行程序
Mouse move 每次鼠标移动时就执行程序
Key down 按下键盘上任何按键时执行程序
Key up 放开键盘上任何按键时执行程序
Data 当外部数据使用"load variable"或"load movie"加载时执行程序
**** Hidden Message *****
[size=5][b]14.打印[/b][/size]
[size=4][b]PRINT[/b][/size]
print 打印电影短片(矢量)
快捷键:ESC+p+r
功能说明:以vector模式打印指定的影片画面
语法:print(target,type);
target: 原始影片对象的目标路径
type: 打印的形式(bmovie,bframe,bmax)
注意: 1) flash 5默认所有影片的帧(frame)都可以打印,如果只想打印指定的frame,可在指定帧的label里加入#p打印标签。
2)bmovie:指定欲打印的frame里的bounding box为打印范围,并使用#b打印标签指定bounding box中所欲打印的区域。
3)bframe:指定每一个可打印的frame的bounding box为打印范围,并按照对象的比例与frame的打印范围调整打印的区域。
4)bmax: 指定所有需要打印的frame,其bounding box 里的所有对象为打印范围。
5)如果每一个frame有不同比例大小的对象,使用bframe指令可使每一个对象都填满打印的画面。
**** Hidden Message *****
[size=4][b]PRINTASBITMAP[/b][/size]
PrintAsBitmap 打印电影短片(位图)
快捷键:ESC+p+b
功能说明:以bitmap模式打印指定的影片画面
语法:printAsBitmap(target,type);
target: 原始影片对象的目标路径
type: 打印的方式(bmovie,bframe,bmax)
注意: bitmap打印模式: 对alpha透明度以和颜色渐变效果有最佳的表现为准。
vector打印模式: 如果没有alpha透明度以和颜色渐变效果,则建议使用 vector模式达到最佳打印品质。
**** Hidden Message *****
[size=4][b]PRINTASBITMAPNUM[/b][/size]
PrintAsBitmapNum 打印图层(位图)
快捷键:ESC+b+n
功能说明:以bitmap模式打印指定的影片画面
语法:printAsBitmapNum(level,type);
level: 存放电影文件的层级
type: 打印的方式(bmovie,bframe,bmax)
**** Hidden Message *****
[size=4][b]PRINTNUM[/b][/size]
PrintNum 打印图层(矢量)
快捷键:ESC+p+n
功能说明:以vector模式打印指定的电影图层
语法:printNum(level,type);
level: 存放电影文件的层级
type: 打印的形式(bmovie,bframe,bmax)
**** Hidden Message *****
[size=5][b]15.声音控制[/b][/size]
[size=4][b]STOPALLSOUNDS[/b][/size]
stopAllSounds 停止播放所有的声音
快捷键:ESC+s+s
功能说明:关闭目前播放的电影里所有正在播放的声音,无论正在播放几个flash电影,所有正在发出的声音,都会被停止。
语法:stopAllSounds();
**** Hidden Message *****
[size=5][b]16.程序检测[/b][/size]
[size=4][b]TRACE[/b][/se]
trace 程序检测
快捷键:ESC+t+r
功能说明:在测试电影文件的时候,使用trace指令程序评估,并把结果输出在output窗口。
语法:trace(expression);
expression: 欲评估的程序,程序的结果会出现在output窗口
**** Hidden Message *****
內置指令(ACTIONS)已全部编辑完 小飞侠亲自手打!
花了一个星期的时间,终于完成了第一部分,大家多多支持哦!还有续集哦!
[[i] 本帖最后由 小飞侠 于 2008-4-11 22:17 编辑 [/i]]
lizhaohui 2008-4-12 14:32
我也来学学吧
lizhaohui 2008-4-12 14:39
咦??那两个压缩包下载后怎么无法解压呢??是不是还有没传上去啊abc::05
devilbilly 2008-4-14 17:59
谢谢LZ,正想学习....
liran0802 2008-4-15 16:15
辛苦
辛苦!支持一下
lvdong5830 2008-4-17 08:19
謝謝分享了,好東西大家分享