用EventDispatcher自定义事件
点击次数:23 次 发布日期:2008-11-29 21:23:10 作者:源代码网
|
源代码网推荐
源代码网整理以下 原来也研究过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();
点此下载testEvent.as ok!去定义你的事件吧。
源代码网供稿. |