- 浏览: 28733 次
- 性别:
- 来自: 上海
最新评论
-
phx8742:
太有才了~~~~~~
《沁园春·买票》 -
stuhack0303:
有例子可以看一下吗?
有的话麻烦你发给我,谢谢
邮箱:22 ...
Flex 4 and the Text Layout Framework
EventDispatcher类详解
2010年06月14日 星期一 18:26
Evevt和EventDispatcher类在as3的事件机制中是很重要的角色,dispatchEvent()是EventDispatcher类的一个事件发送方法,它可以发送出Event类或其子类的实例,在as3中所有的显示对象都可以发送事件,因为as3中所有的显示对象都是EventDispatcher子类DisplayObject的实例。
发送事件有三种方式:继承EventDispatcher,如sprite等显示对象、复合EventDispatcher或其子类、实现IEventDispatcher接口。
个人认为复合EventDispatcher在实际应用中用的比较多,没有找到合适例子,自己写了一个很简单的,仅供参考,为了演示把简单的问题复杂话了,首先画一个矩形,点击矩形后发送一个事件,矩形接收事件后alpha变为0;
自定义事件:
package{
import flash.events.Event;
public class MyEvent extends Event{
public static const ALPHA:String = "alpha";
public function MyEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=false){
super(type, bubbles, cancelable);
}
}
}
package{
import flash.display.Sprite;
public class Sample extends Sprite{
public function Sample(){
this.graphics.beginFill(0xff6600);
this.graphics.drawRect(50,50,100,50);
this.graphics.endFill();
this.addEventListener(MyEvent.ALPHAALPHA,blackHandler);
}
private function blackHandler(evt:MyEvent){
this.alpha = 0;
}
}
}
主类:
package{
import flash.display.Sprite;
import flash.events.MouseEvent;
public class Main extends Sprite{
private var sample:Sample;
public function Main(){
sample = new Sample();
//注册事件侦听器
sample.addEventListener(MouseEvent.CLICK,clickHandler);
addChild(sample);
}
private function clickHandler(evt:MouseEvent){
//发送事件
sample.dispatchEvent(new MyEvent(MyEvent.ALPHA));
}
}
}
注:在as3中只有事件的发送者才能侦听事件。在Main类中sample实例发送的事件也只有sample注册的侦听器才能侦听,在Sample中的this正是指向了sample。
事实上,没有什么要比发现、培养、呵护、调整自己的心智的力量更重要的事情了.........
转载地址:http://hi.baidu.com/chancelia/blog/item/1a40a423b64808a94623e80c.html
2010年06月14日 星期一 18:26
Evevt和EventDispatcher类在as3的事件机制中是很重要的角色,dispatchEvent()是EventDispatcher类的一个事件发送方法,它可以发送出Event类或其子类的实例,在as3中所有的显示对象都可以发送事件,因为as3中所有的显示对象都是EventDispatcher子类DisplayObject的实例。
发送事件有三种方式:继承EventDispatcher,如sprite等显示对象、复合EventDispatcher或其子类、实现IEventDispatcher接口。
个人认为复合EventDispatcher在实际应用中用的比较多,没有找到合适例子,自己写了一个很简单的,仅供参考,为了演示把简单的问题复杂话了,首先画一个矩形,点击矩形后发送一个事件,矩形接收事件后alpha变为0;
自定义事件:
package{
import flash.events.Event;
public class MyEvent extends Event{
public static const ALPHA:String = "alpha";
public function MyEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=false){
super(type, bubbles, cancelable);
}
}
}
package{
import flash.display.Sprite;
public class Sample extends Sprite{
public function Sample(){
this.graphics.beginFill(0xff6600);
this.graphics.drawRect(50,50,100,50);
this.graphics.endFill();
this.addEventListener(MyEvent.ALPHAALPHA,blackHandler);
}
private function blackHandler(evt:MyEvent){
this.alpha = 0;
}
}
}
主类:
package{
import flash.display.Sprite;
import flash.events.MouseEvent;
public class Main extends Sprite{
private var sample:Sample;
public function Main(){
sample = new Sample();
//注册事件侦听器
sample.addEventListener(MouseEvent.CLICK,clickHandler);
addChild(sample);
}
private function clickHandler(evt:MouseEvent){
//发送事件
sample.dispatchEvent(new MyEvent(MyEvent.ALPHA));
}
}
}
注:在as3中只有事件的发送者才能侦听事件。在Main类中sample实例发送的事件也只有sample注册的侦听器才能侦听,在Sample中的this正是指向了sample。
事实上,没有什么要比发现、培养、呵护、调整自己的心智的力量更重要的事情了.........
转载地址:http://hi.baidu.com/chancelia/blog/item/1a40a423b64808a94623e80c.html
发表评论
-
时间标签
2011-10-26 17:48 630[Event(name="imageClick&qu ... -
如何加载一个swf文件中类的方法
2011-10-26 16:04 872为了取某个类而去加载swf资源包。请查flex4 api ... -
加载样式 SWF
2011-10-26 15:37 714loadStyleDeclarations () Flex ... -
flex3 ,flex4 skin
2011-10-26 14:00 753flex3 skin: skin:ClassReferenc ... -
请求服务器数据,解决IIE缓存问题
2011-10-25 17:56 818/** * 加上随机数, 解决ie缓存的问题 * ... -
flex垃圾回收
2011-10-25 15:36 624public static function run():vo ... -
flex 滤镜
2011-10-25 15:33 1123flex常用滤镜: 1.GlowFilter(color, a ... -
Event类的实例方法
2010-08-30 21:54 788Event类中包含7个实例方法,可以分为如下3类: 实用程序方 ... -
label/textBase showTruncationTip/isTruncated属性
2010-08-19 16:24 1567showTruncationTip属性 一个控制在截断文本时 ... -
设置dropDownList没有水平、垂直滚动条
2010-08-19 12:41 3005<?xml version="1.0" ... -
使用ItemRenderer处理基于List容器的显示内容 [DataGrid, Tree, List等]
2010-08-12 10:45 1892转载于:http://liguoliang.com/2009/ ... -
使用labelFunction处理DataGrid显示内容(转载)
2010-08-12 10:40 1608转载地址:http://liguoliang.com/2009 ... -
Flex 4 and the Text Layout Framework
2010-08-10 13:15 829site:http://devgirl.wordpress.c ... -
如何在Flex4中的TextFlow对象中定义链接的样式
2010-08-10 13:10 2098Posted 七月 20th, 2009 by bill Fl ... -
flex 自定义toolTip
2010-08-09 15:02 1298两种方法 1,使用css , 设置css更改tooltip样式 ... -
关于flex 的命名空间及访问控制符问题
2010-05-30 22:49 1012FLEX 命名空间与访问控制符 链接地址:http://98 ... -
深入分析Flex [Bindable] 以及使用方法(转载)
2010-05-30 22:42 733转载地址:http://www.gold98.net/bl ... -
初识Flex Data Services(FDS)(转载)
2010-04-18 22:22 770一 FDS相关概念 FDS全称Flex Data Se ... -
Adobe AIR技术优势(装载)
2010-04-13 22:57 823Adobe AIR被媒体誉为2007年最值得关注的技术,就像当 ... -
Adobe AIR介绍(转载)
2010-04-13 22:42 695AIR就是所谓的网络应用 ...
相关推荐
eventdispatcher.js, 自定义对象的JavaScript事件 eventdispatcher.js 自定义对象的JavaScript事件用法[removed][removed][removed]
qt_eventdispatcher_libevent 是基于 Libevent 的 Qt 事件调度器 特点 非常快速 支持Qt4和Qt5 不需要Qt的私有头文件 通过Qt4 和 Qt5 的事件调度,事件循环,...
qt_eventdispatcher_libev 是基于 libev 的 Qt 事件调度器。 特点 非常快速 支持 Qt4 和 Qt5 不需要 Qt 的私有头文件 通过了 Qt4 和 Qt5 的事件调度,事件循环...
自定义对象的 JavaScript 事件 用法 import { EventDispatcher } from 'EventDispatcher.js' ; // Adding events to custom object class Car extends EventDispatcher { start ( ) { this . dispatchEvent ( { ...
事件调度器 用于 JavaScript 中基于事件的通信的 EventDispatcher 微框架
JavaScript事件派发器,对单页交互应用中组件通信十分有用。个人原创,发现bug可向我github中提issue~
EventDispatcher为常规的Lua对象提供了广播器/侦听器事件机制。 Corona SDK开发人员可以编写更简洁的面向对象的代码,该代码不依赖于从显示对象或自定义消息的全局运行时发送消息。 该模块在Corona SDK和其他可能...
事件发送者需要继承EventDispatcher类 事件接收者需要继承EventHandle类,还需要实现handleEvent方法 事件发送者和事件接收者要在构造函数和析构函数中调用一下方法 事件发送者和事件接收者必须是CCObject的子类 ...
qt_eventdispatcher_libevent
集群事件调度程序小而简单的EventDispatcher,它在所有进程中执行事件。安装 npm i --save cluster-eventdispatcher如何使用创建Eventdispatcher的实例(无论是在主服务器还是在工作服务器中): const ...
用于创建自定义事件的灯光库。 安装 npm我@ valeera / eventdispatcher 或者 纱线添加@ valeera / eventdispatcher 基本用法 < script src =" EventDispatcher.js " > </ script > < script > ...
WC EventDispatcher 简单,简洁的ES2015 EventDispatcher。 针对WebCraft,但可以单独使用。安装$ npm install --save wc-eventemitter文献资料addEventListener( types, listener ) types :字符串|| 正则表达式|| ...
EventDispatcher 这个模块是旧的,笨拙的,没有维护,所以请不要使用它:) 轻松将侦听器附加到ZF2的MVC事件。 安装 在您的composer.json文件中添加"mikemix/eventdispatcher": "1.*" 运行...
Symfony EventDispatcher以一个简单有效的方式实现了中介者模式,事件分发器就是那个中介,让系统和插件不会耦合在一起,这让上面的插件系统成为可能,而且他会让你的项目可扩展性更好。 上面的话,翻译自Symfony...
协议扩展事件调度程序使用Swift协议扩展实现EventDispatcher模式这是此博客文章的配套项目: : WWDC上Swift 2.0的一大亮点是引入了协议扩展:能够向协议中添加默认方法实现。 自WWDC以来,来自SketchyTech,David ...
EventDispatcher.js 事件发布/订阅系统在 JavaScript 中的最小实现。用法像这样。 var hoge = new EventDispatcher ( ) ;hoge. on ( 'success' , function ( code ) {console . log ( 'success: response code=%s' ,...
qt_eventdispatcher_libev 是基于 libev 的 Qt 事件调度器。 libev是高性能事件循环/事件模型的网络库,并且包含大量新特性。
它允许通过将事件发送到MQ在后台处理事件。 资源资源 由Forma-Pro开发 Forma-Pro是一家全栈开发公司,其兴趣也扩展到了开源开发。 作为一支由强大的专业团队组成的团队,我们的目标是通过在电子商务,码头工人和...
EventDispatcher 这是Discord4J 的事件分配系统的分支/自适应。 对其进行了修改,使其可以独立于Discord4J使用。注意这是约3年开发的顶点,因此当前的代码库应该足够稳定,可以在生产环境中使用。 但是,由于开发的...