原文 http://www.cnblogs.com/acpp/archive/2010/10/19/1855670.html

 package {

     import flash.events.Event;

     //导入事件类

     public class CustomEvent extends Event {

         //声明自定义事件扩展自事件类成为其子类

         public static  const SENDFLOWER:String="sendFlower";

         //声明静态常量作为事件类型1

         public static  const SENDCAR:String="sendCar";

         //声明静态常量作为事件类型2

         public var info:String;

         //声明变量储存事件信息,这也是我们用自定义事件的主要原因,可以用他来

         //携带额外的信息

         public function CustomEvent(type:String,inf) {

             super(type);

             //调用父类构造函数并设置传入的参数作为事件类型

             info=inf;

             //将传入的参数2存入info

         }

     }

 }

 //2、男孩类:
package { import flash.events.EventDispatcher; //导入事件发送者类 import flash.events.Event; //导入事件类 public class Boy extends EventDispatcher { //声明男孩类扩展自事件发送者类,成为其子类 public function sendFlower() { //声明公开送花方法; var info:String="玫瑰花"; //声明局部变量设置发送信息 var events=new CustomEvent(CustomEvent.SENDFLOWER,info); //声明一个新的自定义事件类的实例,并设置类型为第一种、 //将发送信息存入事件 this.dispatchEvent(events); //发送该事件 } public function sendCar() { //声明公开送车方法; var info:String="百万跑车"; //声明局部变量设置发送信息 var events=new CustomEvent(CustomEvent.SENDCAR,info); //声明一个新的自定义事件类的实例,并设置类型为第二种、 //将发送信息存入事件 this.dispatchEvent(events); //发送该事件 } } } //3、女孩类:
package {
public class Girl {
public function replay(info):void {
trace(info);
}
//声明公开方法,做出反应
}
}
//4、文档类:
package { import flash.display.Sprite; //导入Sprite类 public class Documents extends Sprite { //声明文档类扩展自sprite类 private var _boy:Boy; //声明私有属性为男孩类型 private var _girl:Girl; //声明私有属性为女孩类型 public function Documents() { //构造函数 _boy=new Boy; //创建男孩实例 _girl=new Girl; //创建女孩实例 _boy.addEventListener(CustomEvent.SENDFLOWER,_hand); //为男孩增加类型为CustomEvent.SENDFLOWER的事件监听 _boy.addEventListener(CustomEvent.SENDCAR,_hand); //为男孩增加类型为CustomEvent.SENDCAR的事件监听 _boy.sendCar(); //调用男孩的送车的方法。你可以再试着调用男孩的sendFlower //方法试试,看结果有什么不同 } private function _hand(E:CustomEvent):void { //声明事件处理器 _girl.replay("我收到一位帅哥送我的:"+E.info); //调用女孩的replay方法。 } } }

【转】Flash AS3.0 中的自定义事件的更多相关文章

  1. as3.0中如何阻止事件冒泡

    原作者:菩提树下的杨过转载出处:http://yjmyzz.cnblogs.com 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究 ...

  2. wpf自定义控件中使用自定义事件

    wpf自定义控件中使用自定义事件 1 创建自定义控件及自定义事件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 2 ...

  3. 转载:Flash AS3.0 加载外部资源(图片,MP3,SWF)的两种方式

    Flash AS3.0 加载外部资源(图片,MP3,SWF)的两种方式 出自:http://www.cnblogs.com/top5/archive/2012/08/04/2623464.html 关 ...

  4. Spring中实现自定义事件

    原理: 通过扩展ApplicationEvent,创建一个事件类CustomEvent.这个类必须定义一个默认的构造函数,它应该从ApplicationEvent类中继承的构造函数. 一旦定义事件类, ...

  5. Java&&As3.0 中的final 关键字

    Java和AS3.0关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类.非抽象类成员方法和变量.你可能出于两种理解而需要阻止改变:设计或效率.   可以修饰的对象:   fin ...

  6. DragonBones龙骨骨骼中的自定义事件(另有声音、动画事件)

    参考: DragonBones骨骼动画事件系统详解 一.在DragonBones中添加自定义事件帧 动画制作时 时间轴拉到最下面有一个事件层,添加一个事件帧 左边属性面板定义自定义事件 二.Egret ...

  7. vue--组件中的自定义事件

    父组件通过props向子组件传递数据,子组件通过自定义事件向父组件传递信息. 在子组件中通过$emit触发事件,父组件在直接使用子组件的地方使用v-on(即@)来监听子组件触发的事件. 举例:(不知道 ...

  8. DOM3中的自定义事件

    DOM3级还定义了自定义事件,自定义事件不是由DOM原生触发的,它的目的是让开发人员创建自己的事件.要创建的自定义事件可以由createEvent("CustomEvent"); ...

  9. JS 中的自定义事件和模拟事件

    在 JS 中模拟事件指的是模拟 JS 中定义的一些事件,例如点击事件,键盘事件等. 自定义事件指的是创建一个自定义的,JS 中之前没有的事件. 接下来分别说一下创建这两种事件的方法. 创建自定义事件 ...

随机推荐

  1. Linux硬链接和软链接的差别

    1.硬链接文件和原文件指向相同的数据,两者就像克隆一样,inode号也相同,当删除原 文件时. 硬链接文件仍然存在有效. 但硬链接文件不同于文件的复制.应该说硬链接文件的产生仅仅是原文件所 在文件夹文 ...

  2. RvmTranslator7.1

    RvmTranslator7.1 eryar@163.com RvmTranslator can translate the RVM file exported by AVEVA Plant(PDMS ...

  3. 安卓实训第四天--基于HttpClient来完毕数据在server和设备间的交互。

    上午:老师首先回想了昨天作业. 首先在安卓project中的TOOLS文件里,解析字节流那里,不用改变.而是把server端的编码方式变为UTF-8,然后将在安卓project的LoginActivi ...

  4. thinkphp5的Illegal string offset 'id'错误

    thinkphp5的Illegal string offset 'id'错误 问题 解答 数组同名了,一个html页面传进来两个cateres的数组,所以在找id的时候不知道找这两个里面的哪一个 第一 ...

  5. angular route 与 django urls 冲突怎么解决?

    app.js var app = angular.module('app', [ 'ngResource', 'ngRoute', // 'ui.bootstrap', // 'ngResource' ...

  6. YYDispatchQueuePool阅读笔记

    阅读了开源大神的YYDispatchQueuePool,在此记下一些从中学到的东西. 首先YYDispatchQueuePool.m文件中有如下类型对应: static inline dispatch ...

  7. PostgreSQL 系统表

    postgres=# \d pg_class      Table "pg_catalog.pg_class"     Column     |   Type    | Modif ...

  8. 优秀的Linux文本编辑器 (转载)

    想要挑起狂热Linux爱好者之间的激烈争辩吗?那就问问他们最喜欢的文本编辑器是什么吧.在开源社区中,选择一个用来写文本,或者更进一步,用来写代码的编辑器,比选择一个球队或者游戏控制器还要重要.但是任何 ...

  9. 用Electron开发企业网盘(二)--分片下载

    书接上文,背景见:https://www.cnblogs.com/shawnyung/p/10060119.html HTTP请求头  Range 请求资源的部分内容(不包括响应头的大小),单位是by ...

  10. vue-router 实现无效路由(404)的友好提示

    最近在做一个基于vue-router的SPA,想对无效路由(404)页面做下统一处理.这次我真的没有在官方文档找到具体的说明[捂脸]所以本文仅是我DIY的一个思路,求轻虐=_= 在我的理解中,vue- ...