用EventDispatcher自定义事件 |
| 作者:佚名 来源:不详 更新:2007-1-13 20:46:00 错误报告 我要投稿 |
原来也研究过EventDispatcher,但是最近用的比较多,没想到这么好用,不用定义那么多全局变量。 我不做过多的说明,想要深入了解的同学请看帮助,我只告诉大家怎么定义自己的事件,而且大家马上就能用这些代码定义自己的事件。 下面看代码:
//首先我们要导入EventDispatcher import mx.events.EventDispatcher;
class testEvent extends MovieClip{ function testEvent(){ //在构造函数中初始化 EventDispatcher.initialize(this); } //定义这三个方法 function dispatchEvent(){} function addEventListener(){} function removeEventListener(){} function sendOK(){ //定义事件onSend var eventObj1:Object = {target:this,type:"onSend"}; dispatchEvent(eventObj1); trace("OK"); //定义事件onComplete var eventObj2:Object = {target:this,type:"onComplete"}; dispatchEvent(eventObj2); } } 怎么用我们的事件呢?往下看! 新建一个FLA,输入以下代码: 大家还记得UI组建的事件处理函数么,对这个和UI组建的差不多,都是addEventListener和removoeEventListener。
var testObj:testEvent = new testEvent(); var eventObj1:Object = new Object(); eventObj1.onSend = function(obj){ trace("type:"+obj.type); } var eventObj2:Object = new Object(); eventObj2.onComplete = function(obj){ trace("type:"+obj.type); } testObj.addEventListener("onSend",eventObj1); testObj.addEventListener("onComplete",eventObj2); testObj.sendOK(); ok!去定义你的事件吧。
|
|
| 文章录入:skyuu 责任编辑:skyuu |
|
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |