im trying head round needed catch event "beep2", using dispatchevent. function "donext" not firing, though im able produce trace result of dispatchevent "beep2 true".
this code uses customevent class extend event class. right on limit of knowledge far, appreciated. :)
thanks.
package //main.as (document class)
import flash.display.movieclip; import flash.events.event; public class main extends movieclip { public var ftasks:movieclip; public function main () { ftasks = new filetasks(); addchild(ftasks); ftasks.addeventlistener(customevent.beep2, donext); } //not firing public function donext (evt:event) { trace("donext"); } }
package //customevent.as
//extend event class. import flash.events.event; public class customevent extends event { public static const beep1 ="beep1"; public static const beep2 ="beep2"; //declare event constructor public function customevent(type:string, bubbles:boolean) { super(type, bubbles); type = this.type; bubbles = this.bubbles; trace(type, bubbles); } public override function clone():event { return new customevent(type, bubbles); } }
package //filetasks.as
import flash.display.movieclip; import flash.events.mouseevent; import flash.events.event; public class filetasks extends movieclip { public var ref; public function filetasks (_ref) { ref = _ref; dispatchevent(new customevent(customevent.beep2, true)); } public function done (evt:mouseevent) { dispatchevent(new customevent(customevent.beep1, true)); } }
i think problem is, event fired, before added eventlistener.
Comments
Post a Comment