================Main文档类================ package { import flash.display.Sprite; public class Main extends Sprite { public function Main():void { var a:MyEventObject=new MyEventObject(); a.getdispatcher().addEventListener(MouseEvent.CLICK,an);//此处的a.getdispatcher()相当于abc,之所以不直接写a,是因为MyEventObject类未继承EventDispatcher类,不具备addEventListener()侦听方法 function an(evt:MouseEvent) { //代码行,此处省略 } } } } ================MyEventObject发送事件类================ package { import flash.events.Event; import flash.events.EventDispatcher; public class MyEventObject {//注意此处未继承EventDispatcher类 private var abc:EventDispatcher; public function MyEventObject():void { abc=new EventDispatcher();//复合EventDispatcher类 } public function getdispatcher():EventDispatcher { return abc; } public function doevent():void { abc.dispatchEvent(new Event());//手动触发事件 } } }