• AS3.0自定义事件 例子


    //自定义事件 
    package
    {
    import flash.events.Event;

    public class GameEvent extends Event
    {
    public static var LOGIC_INIT:String = "LogicInitialize";

    public var data:Object;
    /**
    * 构造函数
    *
    @param type 时间类型
    *
    @param bubbles 是否冒泡
    *
    @param cancelable 指示是否可以阻止与事件相关联的行为。
    */
    public function GameEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false)
    {
    super(type, bubbles, cancelable);
    }
    override
    public function toString():String {
    return formatToString("GameEvent","type","bubbles","cancelable","eventPhase","data");
    }
    override
    public function clone():Event {
    var tempEvt:GameEvent
    =new GameEvent(type,bubbles,cancelable);
    tempEvt.data
    =data;
    return tempEvt;
    }
    }

    }
    //事件发送 
    package
    {
    import flash.events.EventDispatcher;

    public class GameBroadcast extends EventDispatcher
    {

    public function GameBroadcast()
    {

    }

    public function replay()
    {
    var gameEvent:GameEvent
    =new GameEvent(GameEvent.LOGIC_INIT);
    dispatchEvent(gameEvent);
    }

    }

    }
     
    package
    {
    import flash.display.Sprite;

    public class ManagerCollect
    {

    public static var broadcast:GameBroadcast=new GameBroadcast();

    public function ManagerCollect()
    {

    }
    }

    }
    ManagerCollect.broadcast.addEventListener(GameEvent.LOGIC_INIT,gameHandler);

    ManagerCollect.broadcast.replay();

    function gameHandler(e:GameEvent):
    void
    {
    trace(e.type);
    trace(e.target);
    }
  • 相关阅读:
    用算法合并数组
    Redis各个数据类型的使用场景
    seesion工作原理
    自删除道指令程序
    uva 1335
    《生活在Linux中》之:使用Bash就是使用Emacs
    手动配置S2SH三大框架报错(三)
    数据和C
    IOS之【地图MapKit】
    我工作这几年(五)-- Android学习4.5月总结(一)
  • 原文地址:https://www.cnblogs.com/602147629/p/1911383.html
Copyright © 2020-2023  润新知