|
Flash AS2 事件处理机制(11) { if (success) { this.broadcastMessage("complete"); } } //---------------------------------------- } 保存文档. 这里首先继承 AsBroadcaster 类.然后在构造函数中使用
AsBroadcaster.initialize(AsBEventClass.prototype); 来获取事件通知和侦听器管理功能.最后使用
this.broadcastMessage("complete"); 来广播消息或发送事件. 当然你也可以选择不继承它,但需要在类中添加下面的方法:
public var addListener:Function; public var removeListener:Function; private var broadcastMessage:Function; 示例类: 打开 CFTimerExample.as 文档.输入下面的代码:
import AsBEventClass; //---------------------------------------- class AsBEventExample { public function AsBEventExample() { var ee:AsBEventClass = new AsBEventClass("AsBEventExample.xml"); ee.addListener(this); } private function complete():Void { trace("complete"); } } 保存文档. 在示例类中我们创建主类的一个实例.来加载 AsBEventExample.xml 文档.然后添加侦听器. 如果要移除侦听器,请使用下面的方法:
ee.removeListener(this); 要加载的 XML 文档: 打开 AsBEventExample.xml 文档,随便输入一些内容便可.测试用.
示例 fla 文档: 打开 AsBEventExample.fla 文档.将"图层 1"重命名为 Actions.并在第一帧中输入下面的代码:
new AsBEventExample(); 保存文档. 测试 Flash 文档.在 XML 文档成功加载后会在输出面板中显示以下内容
complete 如需给事件传递参数,在发送事件时如下添加参数:
this.broadcastMessage("complete", 参数1, 参数2, 参数N); 在调用事件时:
private function complete(参数1, 参数2, 参数N)
|