|
Flash AS2 事件处理机制(10) 这两个类的很相似.它们都是提供事件通知和侦听器管理功能. 但 AsBroadcaster 类是系统内置的.执行效率会比 BroadcasterMX 类快很多.所以这里我们就用 AsBroadcaster 类来讲解. 此类详细: public addListener(listenerObj:Object):Boolean ---注册侦听器. public broadcastMessage(eventName:String):Void ---广播消息/发送事件. public static initialize(obj:Object):Void ---将事件通知和侦听器管理功能添加到给指定的对象 public removeListener(listenerObj:Object):Boolean ---移除侦听器. public _listeners:Array [只读] ---对已注册侦听器对象的引用.
该怎么用呢? 看下面的示例: [4.1.示例: AsBEventClass 类(简单的示例)] 此示例文档详细: Example/AS2/events/AsBEvent/AsBEventClass.as Example/AS2/events/AsBEvent/AsBEventExample.as Example/AS2/events/AsBEvent/AsBEventExample.xml Example/AS2/events/AsBEvent/AsBEventExample.fla
主类: 打开 CFEventClass.as 文档,输入下面的代码:
import mx.utils.Delegate; //---------------------------------------- class AsBEventClass extends AsBroadcaster { //---------------------------------------- public var tXML:XML; //---------------------------------------- public function AsBEventClass(url:String) { AsBroadcaster.initialize(AsBEventClass.prototype); this.tXML = new XML(); this.tXML.onLoad = Delegate.create(this, this.XMLonLoad); this.tXML.load(url); } private function XMLonLoad(success:Boolean):Void
|