flash主要函数onEnterFrame

时间:2024.3.10

MovieClip.onEnterFrame

用法

my_mc.onEnterFrame = function() {

// 此处是您的语句

}

参数:无。

返回:无。

说明:事件处理函数;以 SWF 文件的帧频持续调用。首先处理与 enterFrame 剪辑事件关联的动作,然后才处理附加到受影响帧的所有帧动作。

必须定义一个在调用事件处理函数时执行的函数。

示例:下面的示例为 onEnterFrame 方法定义一个函数,该函数将 trace() 动作发送到“输出”面板。 my_mc.onEnterFrame = function () {

trace ("onEnterFrame called");

};

onClipEvent()

用法

onClipEvent(movieEvent){

// 此处是您的语句

}

参数:movieEvent 是一个称作事件 的触发器。当事件发生时,执行该事件后面大括号中的语句。可以为 movieEvent 参数指定下面的任何值:

load 影片剪辑一旦被实例化并出现在时间轴中时,即启动此动作。

unload 在从时间轴中删除影片剪辑之后,此动作在第 1 帧中启动。在向受影响的帧附加任何动作之前,先处理与 Unload 影片剪辑事件关联的动作。

enterFrame 以影片剪辑帧频不断触发的动作。首先处理与 enterFrame 剪辑事件关联的动作,然后才处理附加到受影响帧的所有帧动作。

mouseMove 每次移动鼠标时启动此动作。_xmouse 和 _ymouse 属性用于确定当前鼠标位置。 mouseDown 当按下鼠标左键时启动此动作。

mouseUp 当释放鼠标左键时启动此动作。

keyDown 当按下某个键时启动此动作。使用 Key.getCode() 获取有关最后按下的键的信息。 keyUp 当释放某个键时启动此动作。使用 Key.getCode() 方法获取有关最后按下的键的

信息。

data 当在 loadVariables() 或 loadMovie() 动作中接收数据时启动此动作。当与

loadVariables() 动作一起指定时,data 事件只在加载最后一个变量时发生一次。当与 loadMovie() 动作一起指定时,获取数据的每一部分时,data 事件都重复发生。

说明

事件处理函数;触发为特定影片剪辑实例定义的动作。

示例:下面的语句在导出 SWF 文件时包括来自外部文件的脚本;当加载包含脚本中的动作所附加到的影片剪辑时,运行这些动作:

onClipEvent (load) {

#include "myScript.as"

}

下面的示例将 onClipEvent() 与 keyDown 影片事件一起使用。keyDown 影片事件通常与 Key 对象的一个或多个方法和属性一起使用。下面的脚本使用 Key.getCode() 找出用户按下了哪个键;如果按下的键与 Key.RIGHT 属性相匹配,则将影片转到下一帧;如果按下的键与 Key.LEFT 属性相匹配,则将影片转到上一帧。

onClipEvent(keyDown) {

if (Key.getCode() == Key.RIGHT) {

_parent.nextFrame();

} else if (Key.getCode() == Key.LEFT){

_parent.prevFrame();

}

}

下面的示例将 onClipEvent() 与 mouseMove 影片事件一起使用。_xmouse 和 _ymouse 属性跟踪每次鼠标移动时的鼠标位置。

onClipEvent(mouseMove) {

stageX=_root._xmouse;

stageY=_root._ymouse;

}

未公开类[OnEnterFrameBeacon]的使用技巧

作者:维艺--Flash

相信大家对影片剪辑的"onEnterFrame"事件一定很熟悉吧,只要播放头在影片剪辑所在桢上就可以不断的触发"onEnterFrame"事件,并执行相应的动作。在平常的动画制作中,有时我们会希望一个普通的对象也具有类似影片剪辑的''onEnterFrame"功能,在这里我告诉大家一个最简便的方法:使用

[OnEnterFrameBeacon]类!

[OnEnterFrameBeacon]类是MM未公开的类之一,但它并非隐藏的内建类,而是flash mx 2004自带的自定义类,所以使用它绝对安全,不用担心未来版本是否会支持的问题。

----test.fla 开始---

(第一桢上写代码)

mx.transitions.OnEnterFrameBeacon.init();

//::重要:: 调用[OnEnterFrameBeacon]类方法'init'进行初始化。其实它也只有这一个方法,功能就是为

MovieClip(内建对象)包装上广播器的相关方法。

var..wiyiObj=new Object();

//生成一个普通对象

wiyiObj.showHello=function(){

//为wiyiObj对象定义一个简单方法,在输出面板上显示"Hello!"

trace("Hello!");

}

wiyiObj.onEnterFrame=function..(){

//象为一个影片剪辑一样为wiyiObj对象定义'onEnterFrame'方法

this.showHello();

//调用wiyiObj对象的'showHello'方法

}

MovieClip.addListener(wiyiObj);

//::重要:: 向MovieClip(内建对象)注册wiyiObj对象为侦听者。它的作用就是接受MovieClip对象不断发出的'onEnterFrame'消息,然后执行自己的'onEnterFrame'方法。

---test.fla 结束--

好了,现在测试一下吧,wiyiObj对象是不是不断地向您说"Hello!"呢?

最后需要补充的是,wiyiObj和普通影片剪辑有所不同,wiyiObj对象从注册为MovieClip对象的侦听者起开始不停地触发'onEnterFrame'事件,并不受播放头的影响。如果你需要它停止触发'onEnterFrame'事件,可以这样:

-------------------------------------------------

MovieClip.removeListener(wiyiObj);

//从MovieClip的侦听者组注销wiyiObj对象


第二篇:flash常用函数


FLASH常用函数

1.stop和play函数

  stop():暂停当前动画的播放,使播放头停止在当前帧。

  play():如果当前动画暂停播放,而且动画并没有播放完时,从播放头停止处继续播放动画。

2.gotoAndPlay和gotoAndStop函数

  gotoAndPlay([scene,]frame):指定跳转到某个帧开始播放动画,参数scene是设置开始播放的场景,如果省略scene参数,则默认当前场景;参数frame是指定播放的帧号。

  gotoAndStop([scene,]frame):这条函数是指定跳转至动画的指定帧并停止在该帧。

3.nextFrame和prevFrame函数

  nextFrame()功能:播放动画的下一帧,并停在下一帧。

  prevFrame()功能:播放动画的前一帧,并停在前一帧。

4.nextScene和prevScene函数

  nextScene()功能:使动画进入下一场景的第1帧,并继续播放动画。

prevScene()功能:使动画进入前一场景的第1帧,并继续播放动画。

5.trace函数

  格式:trace(表达式)

  功能:将表达式的值传递给“输出”面板,在面板中显示表达式的值。

6.setProperty函数

  格式:setProperty(target,property,value/expression)

  功能:用来设置影片剪辑实例(target)的属性。

  参数:target给出了影片剪辑实例在舞台中的路径和名称;Property是影片剪辑实例的属性,见下表;value是影片剪辑实例属性的值;expression是一个表达式,其值是影片剪辑实例属性的值。

7.getProperty函数

  格式:getProperty(my_mc,property);

  功能:用来得到影片剪辑实例属性的值。

  参数:括号内的参数my_mc是舞台工作区中的影片剪辑实例的名称,参数property是影片剪辑实例的属性名称。

8.stopAllSounds函数

  功能:停止当前动画所有声音的播放,但是动画仍然继续播放。它不含参数。

9.startDrag函数

  格式:startDrag()函数有3种使用格式

格式1:startDrag(target);

格式2:startDrag(target,[lock]);

格式3:startDrag(target[,lock[,left,top,right,bottom]]);

  功能:该函数用来设置鼠标可以拖拽舞台工作区的影片剪辑实例。

  参数:target是要拖拽的对象,lock参数是是否以锁定中心拖拽,参数left(左边)、top(顶部)、right(右边)和bottom(底部)是拖拽的范围。在[ ]中的参数是可选项。可以通过startDrag()函数的参数设置区来改变参数。

10.stopDrag函数

  功能:stopDrag()函数没有参数,其功能是用来停止鼠标拖拽影片剪辑实例。

11.toggleHighQuality函数

  功能:设置动画的播放质量。可以完成消除锯齿模式和不消除锯齿模式的切换。

12.tellTarget函数

  格式:tellTarget(target){

           Statement;}

  功能:用于控制某个指定的影片剪辑实例。

  函数参数target是要控制的影片剪辑实例的目标路径和名称,可以使用斜线操作符只是目标路径,“statement”是控制影片剪辑实例的语句体。

13.With语句

  格式:with(object){

              语句体;

        }

  功能:用于控制指定的影片剪辑实例,Flash MX使用它替换tellTarget()函数。

  函数参数object是要控制的影片剪辑实例路径和名称,使用点操作符指示目标路径。

14.getURL函数

  格式:getURL(url[,window][,”variables”])

  功能:启动一个url定位,经常使用它来调用一个网页,或者使用它来调用一个邮件。调用网页的格式是在双引号中加入网址,调用邮件可以在双引号中加入mailto:,再跟一个邮件地址,例如:“mailto:flash@yahoo.com..cn”。

参数:url是设置调用的网页地址URL,参数window是设置浏览器网页打开的方式(指定网页文档应加载到浏览器的窗口或HTML框架)。这个参数可以有4种设置方式。

_self:在当前SWF动画所在网页的框架,当前框架将被新的网页所替换。

_blank:打开一个新的浏览器窗口,显示网页。

_parent:如果浏览器中使用了框架,则在当前框架的上一级显示网页。

_top:在当前窗口中打开网页,即覆盖原来所有的框架内容。

15.loadMovie函数

  格式一:loadMovie(“url”,target[,method])

  功能:该函数用来从当前播放的动画外部加载SWF动画到指定的位置。

参数url:被加载的外部SWF文件或JPEG文件的绝对或相对的URL路径,相对路径必须相对于级别0处的SWF文件。绝对URL必须包括协议引用,例如http://或file:///。如果使用Flash Player播放动画,则需要将被加载的动画与被加载的外部文件放到同一个文件夹中,且文件名称不能够包括文件夹或者磁盘驱动器的标识。

参数target是可选参数,用来指定目标影片剪辑实例的路径。目标影片剪辑实例将替换为加载的SWF文件或图像。被加载的动画将继承被替换掉的影片剪辑元件实例的属性。

method可选参数,用来指定用于发送变量的HTTP方法。该参数必须是字符串GET或POST。如果没有要发送的变量,则省略此参数。GET方法将变量追加到URL的末尾,它用于发送少量的变量。POST方法在单独的HTTP标头中发送变量,它用于发送大量的变量。例如:loadMovie(“自转地球.swf”,“MYSWF”);其中“自转地球.swf”是要加载的外部动画,“MYSWF”是要被外部加载动画所替换的影片剪辑实例名。

  格式二:loadMovieNum(url[,location,variables])

  功能:与格式一的功能相同,该函数用来从当前播放的动画外部,加载SWF动画到指定的位置。

  参数:参数location是可选参数,用来指定播放的动画中,外部动画将加载到播放动画的哪个层。Variables也是可选参数,指定发送变量所使用的HTTP方法GET或POST。

16.loadVariables函数

  格式一:loadVariables(url,target[,variables])

  格式二:loadCariablesNum(url,location,variables)

  功能:从外部的文件读取数据,外部文件可以是文本文件,或者是由CGI程序文件、ASP(Active Server Pages)、PHP(Personal Home Page)生成的文本文件,并将这些值赋给动画中的变量,文本格式必须使用标准的MIME格式:application/x-www-urlformencoded。

  参数:url参数是被加载变量的URL路径名,target是变量要加载到当前动画的影片剪辑动画实例的名称。location是变量要加载到当前动画的哪个层。

17.duplicateMovieClip和removeMovieClip函数

  格式:duplicateMovieClip(target,newname,depth)

  功能:复制一个影片剪辑实例对象到舞台工作区指定层,并给它赋予一个新的名称。

  参数:target给出要复制的影片剪辑元件的目标路径。newname给出新的影片剪辑实例的名称。depth给出新的影片剪辑元件所在层的号码。

18.removeMovieClip函数

  格式:removemovieclip(target)

  功能:该函数用删除指定的对象,其中参数target是对象的目标地址路径。

19.fscommand()函数

  格式:fscommand(“command”,“parameters”)

  功能:它是Flash系统用来支持它的应用程序(指可以播放Flash电影的应用程序,如Flash Player播放器或安装了插件的浏览器)互相传达函数的工具。在Web上,它的典型应用是Flash发送函数给程序语言(JavaScript或VBScript)或程序语言发送函数给Flash。

  使用说明:当使用它向Flash Player传递参数,并控制Flash Player动画播放的时候,参数command是函数字,参数parameters是函数字的参数,函数字对应的参数设置见下表

20.其它常用函数

getTimer():返回影片开始以来经过的时间,以毫秒为单位。

hitTest(target,x,y,):冲突检测函数,这是一个很有用的函数。用来判断目标是否到达指定的坐标。如果到达,则返回true;如果未到达或者已经离开,则返回false。tatget是所要判断的目标,它可以是一个影片剪辑实例,x和y是指定的坐标值。

例如:在舞台工作区中,创建一个名字为“sample”的红方块影片剪辑实例、一个名字为“text”的动态文本框和一个按钮实例,按钮实例的程序为:

text=hitTest(“_root.sample”,100,100);

然后测试电影,如果红方块不位于电影舞台工作区坐标为(100,100)的位置,文本框中将显示false;反之,文本框中将显示true。

int(number):返回参数number(变量或者表达式)的整数部分。

scroll:给出文本可视区域中最上面一行的行号。

newLine:在字符串中增加一个换行符。例如:text=“中文”add newLine add“Flash MX”。如果text是文本变量,将在文本框中分两行显示:“中文”和“Flash MX”。

number(expression):将表达式expression的值以数值方式返回。

parseFloat(string):函数将字符串参数转换为一个浮点数,再返回该浮点数。当该函数遇到字符串中非数字字符时,则会停止搜索,如果未发现数字,则返回NaN(非数字)。

parseInt(string,radix):string参数根据radix参数所给定的数制的基数,进行搜索和转换为十进制数,直至遇到第一个非法字符为止。如果是2进制,则其基数为2,遇到非0和1的数时停止搜索。

random(number):返回从(0,number-1)范围内的一个随机数,参数可以是一个变量、数值或者表达式。

eval(变量、字符串或表达式):它可以将括号内的参数进行计算,将计算结果作为变量返回。

String(expression):将表达式的值转换为字符串并将其值返回。

targetPath(movieClip):返回指定的影片剪辑实例的路径。

chr(char):用来将char字符转换成对应的ASCII数值。

mbord(char):多字节转换字符成对应的ASCII的数值。

isFinite(expression):判断参数值为一个有限大的数值,则返回true,如果参数值为一个无穷大数或者负无穷大数,则返回false。经常用于判断数学计算的错误,例如除数为0。例如:执行“isFinite(196);”,则返回true。

isNaN(expression):判断参数的值是否为一个数值,如果不为数值,则返回true。参数expression可以为布尔值、变量或者其他的表达式。例如:执行“isNaN(“Flash MX”);”,则返回true,执行“isNaN(196);”,则返回false。

更多相关推荐:
Personal Statement范文

PersonalStatementAsaseniormajoringinEconomicsatXXXoneofthetopfouruniversitiesinShanghaithemorerelevantcoursesItaket...

personal_statement模板50篇

IamkeenonsportsandoutdoorpursuitsIhaveenjoyedarangeofactivitiesfromcountrysidewalkstokayakingandabseiling...

Personal Statement个人陈述

IamathinkerbutnotonetothinkoutloudIlovemyselfbutamnotinlovewiththesoundofmyownvoiceIwanttobelovedbutnotat...

怎样写一份成功的personal statement~

转以下是第三方论点里面对PS很有帮助本人一直认为硕士申请过程中两个主观方面的努力是最重要的1根据自己的情况实事求是因人制宜选择适合的学校和专业2尽量把PS写好展现自己的优势和特点客观的东西因人而异说不清楚不过话...

如何写Personal Statement(个人陈述)

一步步教你怎么写PS一PS是PersonalStatement的简称是我们申请美国研究生院的重要材料之一一份完美的PS有可能使你申请成功的机会大大增加同时PS也是很好的认识你自己的过程通过写PS你将更了解你自己...

Personal Statement范例

PersonalStatementWrittenbyTongZhangAsastudentofBirminghamUniversityIwouldliketoscalehigherintellectualheightsbyunde...

Personal Statement 个人陈述范文

MMMDateofBirth073019xxPersonalStatementIstrivetobecomeaprominentresearcherandleaderofbusinessinthe21stcenturyMypurp...

申请高中的personal statement怎么写

申请高中的personalstatement怎么写在准备出国留学的申请材料中Personalstatement是必不可少的一部分可以一份完美的Personalstatement该怎么写呢本文进行简要解读申请高中...

HR Personal Statement sample 1

PersonalStatementProgramHumanResourceManagementInternationalBusinessManagementMediaEnterprisesInthisageofinformatio...

PersonalStatement(Manchester)

PersonalStatementYuXinqiuIaminthefourthyearofmycollegeandwillgraduateinJunenextyearwithmajorinTextileProductDesigni...

Personal Statement Example

PersonalStatementMyfatherisaHVACHeatingVentilationandAirConditioningengineerandmymotherisanelectricalengineerSinceI...

留学申请Personal statement

MotivationalLetterGoodafternoonladiesandgentlemenwearephoenixconsultingteamItsourpleasuretopresentourstrategicsolut...

personal statement(34篇)