zoukankan      html  css  js  c++  java
  • 实现简单的自发自收的EventDispatcher

    下午自己写了个简单的实现demo不是很完善,贴出来与大家分享。这是一个简单的demo,实现了发送接收,参数携带等基本功能。没有实现冒泡等复杂的东东,有兴趣的可以自己继续扩展实现。

    1 package
    2 {
    3 import com.zs.event.Event;
    4 import com.zs.event.EventDispatcher;
    5
    6 import flash.display.Sprite;
    7
    8 public class MyEventDispatcher extends Sprite
    9 {
    10 public function MyEventDispatcher()
    11 {
    12 var obj:EventDispatcher = new EventDispatcher();
    13 obj.addEventListener("HAHA",callBackFun);
    14 var event:Event = new Event("HAHA");
    15 event.parameter = "my name is zhengs";
    16 obj.dispatcher(event);
    17 }
    18
    19 private function callBackFun(event:Event):void
    20 {
    21 trace(event.parameter);
    22 }
    23 }
    24 }

    1 package com.zs.event
    2 {
    3 public class Event extends Object
    4 {
    5 public var type:String;
    6
    7 public var parameter:Object;
    8
    9 public function Event(type:String)
    10 {
    11 this.type = type;
    12 }
    13 }
    14 }

    1 package com.zs.event
    2 {
    3 public class EventDispatcher extends Object
    4 {
    5 private var obj:Object = new Object();
    6
    7 public function EventDispatcher()
    8 {
    9
    10 }
    11
    12 public function addEventListener(event:String,callBackFun:Function):void
    13 {
    14 obj[event] = callBackFun;
    15 }
    16
    17 public function dispatcher(event:Event):void
    18 {
    19 obj[event.type](event);
    20 }
    21 }
    22 }

  • 相关阅读:
    长沙集训day6
    长沙集训day5(总结)
    长沙集训day4(总结)(爆零记)
    长沙集训day3(总结)(爆零记)
    长沙集训day2(总结)
    长沙集训day1(总结)
    p1324 dining(晚餐)
    p1156集合删数
    1034: [ZJOI2008]泡泡堂BNB
    清北学堂Day 6 游记
  • 原文地址:https://www.cnblogs.com/crkay/p/1798389.html
Copyright © 2011-2022 走看看