查看完整版本: FLASH语法合集之一、內置指令(ACTIONS)(内含实例代码原文件)方便大家学习参考

小飞侠 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]]

雪水冰 2008-4-11 21:12

我来支持下了。。

湛狄 2008-4-11 21:58

我来学习的。

shuipj9 2008-4-12 11:04

非常支持重的数据

cikegate 2008-4-12 11:25

hao
xuexizhong!!
xiexie

lizhaohui 2008-4-12 14:32

我也来学学吧

lizhaohui 2008-4-12 14:39

咦??那两个压缩包下载后怎么无法解压呢??是不是还有没传上去啊abc::05

随水之萍 2008-4-13 22:53

谢谢楼主!收藏一下!

ljxyn 2008-4-14 10:49

谢谢分享abc::03 abc::03

zgs5123 2008-4-14 11:24

谢谢分享abc::07

devilbilly 2008-4-14 17:59

谢谢LZ,正想学习....

〖柳波波〗 2008-4-14 21:42

很好的东西~
收下了~多谢LZ

ice魔 2008-4-15 11:55

abc::01 正需要这个问题的详解的
燃眉之急

liran0802 2008-4-15 16:15

辛苦

辛苦!支持一下

ynssxsb 2008-4-15 17:02

学习来了,要看看好教程.

⑨⑤②柒 2008-4-16 21:25

好东西啊..
楼主辛苦了..

ly5168 2008-4-16 22:43

谢谢分享!!!

lvdong5830 2008-4-17 08:19

謝謝分享了,好東西大家分享

yuanzj 2008-4-17 09:19

看起来不错的东西,收下了,谢谢楼主
页: [1] 2 3 4 5 6 7
查看完整版本: FLASH语法合集之一、內置指令(ACTIONS)(内含实例代码原文件)方便大家学习参考