国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > Flex > 正文

Flex 事件分發(fā)(FlexViewer事件機制)剝離過程

2024-09-08 18:16:55
字體:
來源:轉載
供稿:網友

將FlexViewer里面的事件分發(fā)及監(jiān)聽事件機制剝離出來在其他項目中使用

AppEvent.as

package com { import flash.events.Event;/** * @author SamSung * 創(chuàng)建時間:2014-7-24 下午1:21:05 * */ public class AppEvent extends Event { //-------------------------------------------------------------------------- // // Properties // //--------------------------------------------------------------------------private var _data:Object;private var _callback:Function;public function AppEvent(type:String, data:Object = null, callback:Function = null) { super(type); _data = data; _callback = callback; }/** * The data will be passed via the event. It allows the event dispatcher to publish * data to event listener(s). */ public function get data():Object { return _data; }/** * @private */ public function set data(value:Object):void { _data = value; }/** * The callback function associated with this event. */ public function get callback():Function { return _callback; }/** * @private */ public function set callback(value:Function):void { _callback = value; }/** * Override clone */ public override function clone():Event { return new AppEvent(this.type, this.data, this.callback); }/** * Dispatch this event. */ public function dispatch():Boolean { return EventBus.instance.dispatchEvent(this); }/** * Dispatch an AppEvent for specified type and with optional data and callback reference. */ public static function dispatch(type:String, data:Object = null, callback:Function = null):Boolean { return EventBus.instance.dispatchEvent(new AppEvent(type, data, callback)); }public static function addListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void { EventBus.instance.addEventListener(type, listener, useCapture, priority, useWeakReference); }public static function removeListener(type:String, listener:Function, useCapture:Boolean = false):void { EventBus.instance.removeEventListener(type, listener, useCapture); }} }

EventBus.as

package com { import flash.events.Event; import flash.events.EventDispatcher;/** * The EventBus allows centrallized communication among modules without * point-to-point messaging. It uses the singleton design pattern * to make sure one event bus is available globally. The bus itself * is only available to the container. Modules use the container's * static method to communicate with the event bus. */ public class EventBus extends EventDispatcher { /** Application event bus instance */ public static const instance:EventBus = new EventBus();/** * Normally the EventBus is not instantiated via the <b>new</b> method directly. * The constructor helps enforce only one EvenBus availiable for the application * (singeton) so that it asures the communication only via a sigle event bus. */ public function EventBus() { }/** * The factory method is used to create a instance of the EventBus. It returns * the only instanace of EventBus and makes sure no another instance is created. */ [Deprecated(replacement="instance")] public static function getInstance():EventBus { return instance; }/** * Basic dispatch function, dispatches simple named events. In the case * that the event is only significant by the event token (type string), * this new dispatch method simplify the code. */ [Deprecated(replacement="AppEvent.dispatch")] public function dispatch(type:String):Boolean { return dispatchEvent(new Event(type)); } } }

(編輯:武林網)

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 鄂尔多斯市| 安岳县| 樟树市| 富源县| 庆阳市| 峡江县| 沐川县| 开鲁县| 荥经县| 正蓝旗| 比如县| 新宾| 井研县| 平顺县| 香河县| 滦平县| 玉门市| 钟祥市| 财经| 夏津县| 司法| 汉源县| 子长县| 青岛市| 富顺县| 芮城县| 龙岩市| 吉水县| 左贡县| 内江市| 万盛区| 正阳县| 山东省| 辽宁省| 嘉义县| 漳平市| 逊克县| 河源市| 左贡县| 阳朔县| 凤凰县|