- 浏览: 29752 次
- 性别:
- 来自: 上海
最新评论
-
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 666[Event(name="imageClick&qu ... -
如何加载一个swf文件中类的方法
2011-10-26 16:04 906为了取某个类而去加载swf资源包。请查flex4 api ... -
加载样式 SWF
2011-10-26 15:37 759loadStyleDeclarations () Flex ... -
flex3 ,flex4 skin
2011-10-26 14:00 778flex3 skin: skin:ClassReferenc ... -
请求服务器数据,解决IIE缓存问题
2011-10-25 17:56 877/** * 加上随机数, 解决ie缓存的问题 * ... -
flex垃圾回收
2011-10-25 15:36 657public static function run():vo ... -
flex 滤镜
2011-10-25 15:33 1165flex常用滤镜: 1.GlowFilter(color, a ... -
Event类的实例方法
2010-08-30 21:54 840Event类中包含7个实例方法,可以分为如下3类: 实用程序方 ... -
label/textBase showTruncationTip/isTruncated属性
2010-08-19 16:24 1610showTruncationTip属性 一个控制在截断文本时 ... -
设置dropDownList没有水平、垂直滚动条
2010-08-19 12:41 3042<?xml version="1.0" ... -
使用ItemRenderer处理基于List容器的显示内容 [DataGrid, Tree, List等]
2010-08-12 10:45 1941转载于:http://liguoliang.com/2009/ ... -
使用labelFunction处理DataGrid显示内容(转载)
2010-08-12 10:40 1630转载地址:http://liguoliang.com/2009 ... -
Flex 4 and the Text Layout Framework
2010-08-10 13:15 865site:http://devgirl.wordpress.c ... -
如何在Flex4中的TextFlow对象中定义链接的样式
2010-08-10 13:10 2140Posted 七月 20th, 2009 by bill Fl ... -
flex 自定义toolTip
2010-08-09 15:02 1346两种方法 1,使用css , 设置css更改tooltip样式 ... -
关于flex 的命名空间及访问控制符问题
2010-05-30 22:49 1048FLEX 命名空间与访问控制符 链接地址:http://98 ... -
深入分析Flex [Bindable] 以及使用方法(转载)
2010-05-30 22:42 758转载地址:http://www.gold98.net/bl ... -
初识Flex Data Services(FDS)(转载)
2010-04-18 22:22 796一 FDS相关概念 FDS全称Flex Data Se ... -
Adobe AIR技术优势(装载)
2010-04-13 22:57 863Adobe AIR被媒体誉为2007年最值得关注的技术,就像当 ... -
Adobe AIR介绍(转载)
2010-04-13 22:42 735AIR就是所谓的网络应用 ...
相关推荐
在JavaScript编程中,事件派发器(EventDispatcher)是一个核心概念,它允许对象之间通过事件进行通信,从而实现解耦和模块化的代码设计。EventDispatcher是JavaScript中的一个设计模式,通常用于实现事件驱动的编程...
eventdispatcher.js, 自定义对象的JavaScript事件 eventdispatcher.js 自定义对象的JavaScript事件用法[removed][removed][removed]
qt_eventdispatcher_libevent 是基于 Libevent 的 Qt 事件调度器 特点 非常快速 支持Qt4和Qt5 不需要Qt的私有头文件 通过Qt4 和 Qt5 的事件调度,事件循环,...
**事件调度器(EventDispatcher)是JavaScript中一种常见用于实现基于事件通信的微框架。它遵循发布/订阅(Publish-Subscribe)模式,允许组件之间松耦合地传递信息,从而提高代码的可维护性和复用性。** 在...
自定义对象的 JavaScript 事件 用法 import { EventDispatcher } from 'EventDispatcher.js' ; // Adding events to custom object class Car extends EventDispatcher { start ( ) { this . dispatchEvent ( { ...
qt_eventdispatcher_libev 是基于 libev 的 Qt 事件调度器。 特点 非常快速 支持 Qt4 和 Qt5 不需要 Qt 的私有头文件 通过了 Qt4 和 Qt5 的事件调度,事件循环...
【标题】"qt_eventdispatcher_libevent-master.zip" 是一个与Qt框架相关的开源项目压缩包,其核心内容是将Libevent库集成到Qt事件调度系统中,以增强Qt应用程序的网络事件处理能力。Libevent是一个著名的跨平台事件...
EventDispatcher为常规的Lua对象提供了广播器/侦听器事件机制。 Corona SDK开发人员可以编写更简洁的面向对象的代码,该代码不依赖于从显示对象或自定义消息的全局运行时发送消息。 该模块在Corona SDK和其他可能...
事件发送者需要继承EventDispatcher类 事件接收者需要继承EventHandle类,还需要实现handleEvent方法 事件发送者和事件接收者要在构造函数和析构函数中调用一下方法 事件发送者和事件接收者必须是CCObject的子类 ...
然后,我们需要使用 EventDispatcher 对象来发送这个事件,通过依赖注入的方式,我们注入 EventDispatcher 对象,这里类型我们输入 EventDispatcherInterface,换行,使 用 $eventDispatcher 对象发送事件,我们按着...
集群事件调度程序小而简单的EventDispatcher,它在所有进程中执行事件。安装 npm i --save cluster-eventdispatcher如何使用创建Eventdispatcher的实例(无论是在主服务器还是在工作服务器中): const ...
用于创建自定义事件的灯光库。 安装 npm我@ valeera / eventdispatcher 或者 纱线添加@ valeera / eventdispatcher 基本用法 < script src =" EventDispatcher.js " > </ script > < script > ...
1. **事件系统**:事件系统是软件中的一个核心组成部分,它提供了一个框架,使得对象可以注册对特定事件的兴趣,并在这些事件发生时接收通知。在Unity中,事件系统通常用于处理用户输入、游戏状态变化等。 2. **...
WC EventDispatcher 简单,简洁的ES2015 EventDispatcher。 针对WebCraft,但可以单独使用。安装$ npm install --save wc-eventemitter文献资料addEventListener( types, listener ) types :字符串|| 正则表达式|| ...
"EventDispatcher"是一个轻量级的库,专门用于管理和调度事件,它使得开发者能够更有效地组织和处理应用程序中的各种事件。本文将深入探讨EventDispatcher库的核心概念、功能以及如何在实际项目中应用。 首先,事件...
1. 应用程序组件触发一个事件,通过调用EventDispatcher的`dispatch()`方法,并传入一个事件名和一个可选的事件对象。 2. EventDispatcher接收到事件后,查找所有注册的对应事件名的监听器。 3. 对于每个找到的监听...
在JavaScript中,自定义事件是一种强大的机制,它允许开发者创建自己的事件类型,以便在不同的对象之间传递信息或协调状态更新。这种技术对于大型应用程序或游戏的模块化和解耦至关重要。在JavaScript中实现自定义...
当一个事件发生时,它会被添加到队列中,然后由事件调度器(EventDispatcher)分发给相应的监听器。 2. 触屏事件类型 在Cocos2D-X中,触屏事件主要有以下几种类型: - `EventType.TOUCH_BEGAN`: 指的是手指首次...
EventDispatcher 这个模块是旧的,笨拙的,没有维护,所以请不要使用它:) 轻松将侦听器附加到ZF2的MVC事件。 安装 在您的composer.json文件中添加"mikemix/eventdispatcher": "1.*" 运行...
Symfony EventDispatcher以一个简单有效的方式实现了中介者模式,事件分发器就是那个中介,让系统和插件不会耦合在一起,这让上面的插件系统成为可能,而且他会让你的项目可扩展性更好。 上面的话,翻译自Symfony...