flex 事件学习



 一、了解观察者模式

  • 什么是观察者模式?
  • 生活中的观察者模式(好莱坞原则、订阅报纸、房产中介…)
  • AS3中事件例子: 如下监听click事件,一发生就调用onClick()函数
  • button.addEventListener(click,onClick);
  • internal function onClick(evt:MouseEvent):void{

    txt.text=click a button!;

    }

  • 了解下图:

 

 

 

二、事件流

 

1.捕获事件(从根节点到子节点,检测对象是否注册了监听器,是则调用监听函数) 2.目标阶段(调用目标对象本身注册的监听程序) 3.冒泡阶段(从目标节点到根节点,检测对象是否注册了监听器,是则调用监听函数)注:事件发生后,每个节点可以有2个机会(21)响应事件,默认关闭捕获阶段。可以参考例子EventDemo2

 

 

IEventDispatcher接口

addEventListener( ) 注册事件监听器

removeEventListener( ) 移除事件监听器

dispatchEvent( ) 派发事件,从一个时间引发另一个事件较多。

EventDispatcher类,见参考手册

 

 

addEventListener

addEvnetListener(type:String,listener:Function,useCapture:Boolean=false,priority:int=0,useWeakReference:Boolean=false)

 

removeEventListener(type:String,listener:Function,useCapture:Boolean=false)

 

 

三、Event对象

Event 类作为创建 Event 对象的基类,当发生事件时,Event 对象将作为参数传递给事件侦听器。

MouseEvent

KeyboardEvent

查参考手册ActionScript3.0中文版.chm

 

 

四、如何自定义事件

1.创建自定义事件名称的Event

参考例子EventDemo3

 dispatchEvent(new Event(“myEvnet”,true,false);

 

2.创建自定义事件类

 Public class MyEvent extends Event{

 ….

}

 

例:拖曳事件的实现

DragManager(mx.managers)

DragSource

DragEvent

见参考手册和实DragExample_1

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值