一个事件只可能是:自己抛出,自己侦听。
所以,才有了下面的 “public static const dispatcher…”,就是声明一个公有的静态对象,这样才使的可以在任意地方访问到并且对他进行抛出和侦听事件。
自定义CustomEvent类,继承Event,并且给他增加一个dispatcher:EventDispatcher属性。
使用这个类,就可以抛出事件并附带数据。
因为使用了 static 设置为静态属性,所以其他任意地方只要注册有这个事件侦听,就能捕获到。
CustomEvent:
package
{
import flash.events.Event;
import flash.events.EventDispatcher;
public class CustomEvent extends Event
{
public static const EVENT_NAME:String=”event_name”;
public static const dispatcher:EventDispatcher=new EventDispatcher();
public var data:Object;
public function CustomEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=false, data:Object=null)
{
super(type, bubbles, cancelable);
this.data=data;
}
override public function clone():Event{
return new CustomEvent(type, bubbles, cancelable, data);
}
}
}
抛出事件时:
var custom:CustomEvent=new CustomEvent(CustomEvent.CLICK);
//custom.data is Object;//发送事件同时,可以传值(可传可不传)
CustomEvent.dispatcher.dispatchEvent(custom);
侦听事件时:
CustomEvent.dispatcher.addEventListener(CustomEvent.CLICK,clickHandler);
相关推荐
事件处理函数接收一个事件参数,从中可以获取事件的相关信息。 4. 示例学习:在"flex自定义组件事件DEMO"中,你可以看到如何在自定义组件中创建并派发自定义事件,以及如何在其他地方监听和响应这些事件。通过分析...
自定义事件是Flex开发中的一个重要概念,允许开发者扩展内置事件系统,以满足特定项目的需要。下面将详细介绍Flex4自定义事件的用法,以及如何在一个完整的项目中导入和运行。 1. **创建自定义事件类** - 首先,...
这段代码中,我们在`MyComp`组件上注册了一个事件处理器`mcclick`,该处理器会在接收到`MY_CLICK`事件时显示一个弹窗,并展示事件中携带的数据。 #### 5. 总结 通过上述示例,我们可以看到Flex自定义事件的强大...
这个主题聚焦于“flex自定义控件与事件”,这是一个关键的开发概念,特别是对于那些希望深入理解Flex架构和提升应用用户体验的开发者来说。 自定义控件在Flex开发中扮演着重要角色,它们允许开发者根据项目需求创建...
监听自定义事件 在需要响应自定义事件的地方,可以使用`addEventListener()`方法添加事件监听器: ```actionscript myComponent.addEventListener(MyCustomEvent.MY_CUSTOM_EVENT, onMyCustomEvent); function ...
当一个组件想要响应某个事件时,它会添加一个事件监听器到该事件类型上。当事件发生时,相应的监听器函数会被调用。在这个案例中,`EditUpdate`组件注册了对`MyEvent.Mod_OK`事件的监听,当这个事件被派发时,`ModOk...
5. **移除事件监听器**:当不再需要监听自定义事件时,记得使用removeEventListener方法移除监听器,以优化性能: ```actionscript removeEventListener(CustomEvent.MY_EVENT, onCustomEvent, false); ``` 通过...
本示例着重于一个名为“ImageViewer”的自定义组件,这通常是一个用于展示图像并可能包含缩放、平移等交互功能的组件。 组件生命周期是每个Flex组件从创建到销毁所经历的一系列阶段。理解组件生命周期至关重要,...
Flex自定义组件是Adobe Flex框架中的一个重要特性,它允许开发者创建具有特定功能和外观的UI元素,以满足项目中独特的用户界面需求。Flex是一个开源的、基于MXML和ActionScript的开发框架,主要用于构建富互联网应用...
本篇文章将深入探讨如何在Flex环境中自定义实现一个具备展开、收缩功能的多级目录树形结构。 首先,让我们理解`Flex`布局。Flex布局,全称为Flexible Box,是一种用于容器中元素的布局模型,旨在提供更好的灵活性,...
在本文中,我们将深入探讨如何在Flex环境中自定义加载条,即进度条组件。Flex是一种基于ActionScript 3.0的开源框架,用于构建富互联网应用程序(RIA)。它提供了丰富的UI组件库,其中包括标准的进度条组件,但有时...
3. **派发事件**:在需要触发事件的地方,使用`dispatchEvent()`方法发送自定义事件。 4. **监听事件**:在接收方组件中,使用`addEventListener()`方法添加事件监听器,处理自定义事件。 在提供的“WinCCALLMine”...
自定义`ToolTip`在Flex中是一个强大的工具,可以极大地增强用户界面的交互性和信息传递能力。通过深入理解`Main.mxml`和`CustomToolTip.mxml`的结构和功能,开发者可以灵活地定制`ToolTip`,以适应各种设计需求和...
在这个例子中,`MY_CUSTOM_EVENT`是自定义事件的类型常量,`myData`是一个附加数据属性。构造函数允许设置事件的基本属性:类型、是否冒泡和是否可取消。 接下来,在MXML中,你可以使用`<fx:Declarations>`标签来...
标题提到的"flex 自定义进度条",指的是利用Flex布局技术来设计一个可定制的进度条组件。Flex布局,全称为Flexible Box布局,是一种在CSS3中引入的布局模型,旨在提供更灵活的盒状模型布局方式,尤其适合在不同屏幕...
Flex是一种基于ActionScript 3.0的开源框架,主要用于构建富互联网应用程序(RIA)。在Flex应用中,"预加载器"...通过学习和实践这些知识点,开发者可以成功地在Flex应用中实现一个美观且高效的自定义加载进度条。
在标题“各种Flex自定义组件”中,我们可以推断这是一个包含多种定制Flex组件的资源集合。这些组件可能包括时间选择器、数据网格(datagrid)、树形视图(tree)和下拉组合框(combox)。每个组件都有其特定的用途和...
在给定的标题“FLEX4 s:dataGrid单元格弹出可文本”中,我们关注的是如何实现点击`DataGrid`的单元格后弹出一个自定义组件,展示更多或更详细的信息。 在Flex4中,我们可以利用事件监听和自定义组件来实现这一功能...
要创建一个右键菜单,我们需要监听鼠标右键点击事件,然后动态显示或隐藏菜单。 1. **监听鼠标事件**: - 在Flex组件上,我们可以使用`addMouseListener`方法添加鼠标事件监听器。对于右键点击,我们关注的是`...
本文将围绕“flex3自定义DownloadProgressBar”这一主题展开,讲解如何在Flex3中创建一个定制化的下载进度条组件,并探讨相关的编程技术和实践。 一、自定义组件基础 在Flex中,自定义组件是通过继承已有的...