用EventDispatcher自定义事件

王朝other·作者佚名  2008-05-19
宽屏版  字体: |||超大  

原来也研究过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!去定义你的事件吧。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有