|
Flash AS2 事件处理机制(5) this.complete(); } } //---------------------------------------- }
保存文档,这样我们就创建了一个名为 CFEventClass 的类,拥有一个事件,一个属性,此事件在 XML 文档成功加载后发生.
示例类: 打开 CFEventExample.as 文档,输入下面的代码:
import CFEventClass; //---------------------------------------- class CFEventExample { public function CFEventExample() { var ee:CFEventClass = new CFEventClass("CFEventExample.xml"); ee.complete = this.complete; } private function complete():Void { trace("complete"); } }
保存文档. 在示例类中我们创建主类的一个实例.来加载 CFEventExample.xml 文档.然后使用自定义函数与 complete 事件关联. 如果要移除事件,请使用下面的方法:
ee.complete = undefined //或 ee.complete = null; //或 delete ee.complete;
要加载的 XML 文档: 打开 CFEventExample.xml 文档,随便输入一些内容便可.测试用.
示例 fla 文档: 打开 CFEventExample.fla 文档.将"图层 1"重命名为 Actions.并在第一帧中输入下面的代码:
new CFEventExample();
保存文档. 测试 Flash 文档.在 XML 文档成功加载后会在输出面板中显示以下内容
complete
如需给事件传递参数,在执行事件函数时如下添加参数:
this.complete(参数1, 参数2, 参数N);
在调用事件时:
private function complete(参数1, 参数2, 参数N) { trace([参数1, 参数2, 参数N]); }
下面再看一个示例:
[3.2.示例: CFTimer 类(定时器)] 此示例文档详细: Classes/AS2/utils/CFTimer.as Example/AS2/utils/CFTimer/CFTimerExample.as Example/AS2/utils/CFTimer/CFTimerExample.fla
主类: 打开 CFTimer.as 文档,输入下面的代码:
import mx.utils.Delegate; //----------------------------------------
|