加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Flex自定义事件:一个地方派发(抛出),任何地方监听(捕获)

发布时间:2020-12-15 01:07:47 所属栏目:百科 来源:网络整理
导读:public static const dispatcher…”,就是声明一个公有的静态对象,这样才使的可以在任意地方访问到并且对他进行抛出和侦听事件。 自定义CustomEvent类,继承Event,并且给他增加一个dispatcher:EventDispatcher属性。 使用这个类,就可以抛出事件并附带数
public static const dispatcher…”,就是声明一个公有的静态对象,这样才使的可以在任意地方访问到并且对他进行抛出和侦听事件。 自定义CustomEvent类,继承Event,并且给他增加一个dispatcher:EventDispatcher属性。 使用这个类,就可以抛出事件并附带数据。 因为使用了 static 设置为静态属性,所以其他任意地方只要注册有这个事件侦听,就能捕获到。 CustomEvent: package { import flash.events.Event; import flash.events.EventDispatcher; public class CustomEvent extends Event { public static const EVENT_NAME:String=”event_name”; public static const dispatcher:EventDispatcher=new EventDispatcher(); public var data:Object; public function CustomEvent(type:String,bubbles:Boolean=false,cancelable:Boolean=false,data:Object=null) { super(type,bubbles,cancelable); this.data=data; } override public function clone():Event{ return new CustomEvent(type,cancelable,data); } } } 抛出事件时: var custom:CustomEvent=new CustomEvent(CustomEvent.CLICK); //custom.data is Object;//发送事件同时,可以传值(可传可不传) CustomEvent.dispatcher.dispatchEvent(custom); 侦听事件时: CustomEvent.dispatcher.addEventListener(CustomEvent.CLICK,clickHandler);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读