AS3事件机制

1. MouseEvent

    在类文件里添加鼠标事件类要先引入import flash.events.MouseEvent;
    例:

   
      bt.buttonMode = false ;//是否显视按钮状态,只用于对影片属性的设置
   
      bt.mouseEnabled = false;//鼠标是否可用
   
      bt.doubleClickEnabled = true;//是否可以双击,使用双击事件时,要先打开这个
   
      bt.addEventListener(MouseEvent.DOUBLE_CLICK, doubleclick);
   
      function doubleclick(event:MouseEvent):void

     {   trace("真行,双击都会!")    }

 

MouseEvent(
type:String,
bubbles:Boolean = true, (default = true) — 确定 Event 对象是否参与事件流的冒泡阶段。
cancelable:Boolean = false, (default = false) — 确定是否可以取消 Event 对象。
localX:Number, — 事件发生点的相对于包含 Sprite 的水平坐标。
localY:Number, — 事件发生点的相对于包含 Sprite 的垂直坐标。
relatedObject:InteractiveObject = null, (default = null) — 受事件影响的补充 InteractiveObject 实例。 例如,发生 mouseOut 事件时,relatedObject 表示指针设备当前所指向的显示列表对象。
ctrlKey:Boolean = false, — 指示是否已激活 Ctrl 键。
altKey:Boolean = false, — 指示是否已激活 Alt 键(仅限 Windows)
shiftKey:Boolean = false, — 指示是否已激活 Shift 键。
buttonDown:Boolean = false, — 指示是否按下了鼠标主按键。
delta:int = 0)(default = 0) — 指示用户将鼠标滚轮每滚动一个单位应滚动多少行。 正 delta 值指示向上滚动;负值指示向下滚动。通常所设的值为 1 到 3;值越大,滚动得越快。 此参数仅用于 MouseEvent.mouseWheel 事件。
MouseEvent事件表
CLICK : 定义 click 单击事件
DOUBLE_CLICK : 定义 doubleClick双击事件
MOUSE_DOWN : 定义 mouseDown鼠标按下事件
MOUSE_MOVE : 定义 mouseMove 鼠标移动事件
MOUSE_OUT : 定义 mouseOut 鼠标移出事件
MOUSE_OVER : 定义 mouseOver 鼠标移过事件
MOUSE_UP : 定义 mouseUp 鼠标提起事件
MOUSE_WHEEL : 定义 mouseWheel轨迹球滚动触发事件
ROLL_OUT : 定义 rollOut 滑入事件
ROLL_OVER : 定义 rollOver 滑出事件鼠标事件

2. 文本事件类

3. 时间类

       在AS3里面Event子类里的timer.有一个不如人意的,如: new Timer(1000,20)这表示以1000毫秒也就是1秒为间隔,触发20次动作,但这个1000毫秒并不是真正意义上的1000毫秒,取决于 SWF 文件的帧频或 Flash

     Player的环境,如果机子慢也许要等到1200毫秒后才触发,这和以前用onEnterFrame控制一样,不准确.如果用他来做要求精确的定时器,那只能用另外的方法了!

   var myTimer:Timer = new Timer(1000,20);// 1秒为间隔,触发20次动作
   myTimer.addEventListener(TimerEvent.TIMER, timefun);
   myTimer.start();//开始计时
   var timeadd:Number=0;
   function timefun(the:TimerEvent):void {
   timeadd+=1
   trace("时间事件:触发"+timeadd+"次")
  }

 

timer所有方法:
Timer()每次构造新的 Timer 对象。
reset()重置,类似于秒表的重置按钮。
start()如果计时器尚未运行,则启动计时器
stop()停止计时器。

4. Loader事件

在加载开始时调度 open 事件。
在无法加载文件或在加载过程中出现错误时,调度 ioError 或 securityError 事件。
在文件加载过程中会不断引发 progress 事件。
在文件完成下载但加载的影片剪辑的方法和属性尚不可用时调度 complete 事件。
在可以访问加载的 SWF 文件的属性和方法,即可以开始操作加载的 SWF 文件时调度 init 事件。 在 complete 处理函数之前调度该事件。 在流式 SWF 文件中,init 事件可以在明显早于 complete 事件的时间发生。 在大多数情况下,请使用 init 处理函数。

5.load事件

complete:Event — 文件下载完成后由关联的 LoaderInfo 对象调度。 complete 事件总是在 init 事件之后调度。
httpStatus:HTTPStatusEvent — 在通过 HTTP 发出网络请求并且 Flash Player 可以检测到 HTTP 状态代码时,由关联的 LoaderInfo 对象调度。
init:Event — 在可以访问被加载的 SWF 文件的属性和方法时,由关联的 LoaderInfo 对象调度。 init 事件总是在 complete 事件之前调度。
ioError:IOErrorEvent — 在发生会导致加载操作失败的输入或输出错误时,由关联的 LoaderInfo 对象调度。
open:Event — 下载操作开始时由关联的 LoaderInfo 对象调度。
progress:ProgressEvent — 在下载操作进行过程中接收到数据时,由关联的 LoaderInfo 对象调度。
unload:Event — 删除被下载的对象时,由关联的 LoaderInfo 对象调度。

5.FullScreenEvent事件

只要舞台进入或离开全屏显示模式,Flash 就调度 FullScreenEvent 对象。只有一种类型的 fullScreen 事件:FullScreenEvent.FULL_SCREEN。

6.DataEvent事件

将原始数据完全加载到 Flash  后,Flash将调度 DataEvent 对象。 存在两种数据事件类型:
    * DataEvent.DATA:针对发送或接收的数据进行调度。
    * DataEvent.UPLOAD_COMPLETE_DATA:当数据已发送且服务器响应后进行调度
删除事件侦听器
removeEventListener()      
 
posted @ 2008-10-06 13:58  玫子.可可糖  阅读(1237)  评论(0编辑  收藏  举报