Flex 事件分發(fā)(FlexViewer事件機(jī)制)剝離過程
更新時(shí)間:2014年07月27日 09:54:46 投稿:whsnow
本節(jié)主要介紹了如何將FlexViewer里面的事件分發(fā)及監(jiān)聽事件機(jī)制剝離出來(lái)在其他項(xiàng)目中使用,需要的朋友可以參考下
將FlexViewer里面的事件分發(fā)及監(jiān)聽事件機(jī)制剝離出來(lái)在其他項(xiàng)目中使用
AppEvent.as
package com { import flash.events.Event; /** * @author SamSung * 創(chuàng)建時(shí)間: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)); } } }
相關(guān)文章
Flex播放器(實(shí)現(xiàn)播放、緩沖進(jìn)度條和音頻曲線顯示)
這篇文章主要介紹了Flex播放器(實(shí)現(xiàn)播放、緩沖進(jìn)度條和音頻曲線顯示),需要的朋友可以參考下2014-07-07Flex彈出窗口請(qǐng)求Action函數(shù)示例
這篇文章主要介紹了Flex彈出窗口請(qǐng)求Action函數(shù),需要的朋友可以參考下2014-05-05Flex中實(shí)現(xiàn)對(duì)一個(gè)text渲染不同的字體顏色示例
本文為大家詳細(xì)介紹下Flex中如何實(shí)現(xiàn)對(duì)一個(gè)text渲染不同的字體顏色,具體的實(shí)現(xiàn)思路及代碼如下,有興趣的朋友可以參考下哈,希望對(duì)大家有所幫助2013-07-07flex 開發(fā)項(xiàng)目報(bào)錯(cuò)之404錯(cuò)誤解決方案
最近兩天被HttpStates404這個(gè)錯(cuò)誤折騰的夠嗆,查了很多的文章都是大同小異,接下來(lái)為大家介紹下詳細(xì)的解決方法,感興趣的各位可以參考下哈,希望可以幫助到你2013-03-03Flex中TextInput組件設(shè)置限制某些字符的輸入的方法
TextInput組件設(shè)置限制輸入例如限制某個(gè)字符的輸入、設(shè)置只能輸入某些字符等等,下面是具體的示例,喜歡的朋友可以參考下2014-01-01