`
zhangzuanqian
  • 浏览: 268847 次
  • 来自: ...
社区版块
存档分类
最新评论

Flex中自定义事件

阅读更多

copy from :http://www.cnblogs.com/henryfan/archive/2006/08/14/476444.html

 

 

    事件是一个非常有用的功能,通常用于信息传递交互大大提高程序编写的灵活性。在高级语言中都会集成这方面特性; Flex 也不例外几乎所有控件中都集成了大量的事件,如果 Button Click 事件等。但实际应用中控件自有的事件是不能满真实需要的,特别在自己编写自定义控件时,自定义控件内部信息的改变如何及时通知所在的容器变得很更要;这个时候自定义事件就起到它的作用。

       Flex 中定义事件有两中情况,分别是 ActionScript MXML 中定义。

       ActionScript 中定义:

       [Event(name="myEnableEvent", type="flash.events.Event")]

public class MyComponent extends UIComponent

{

           ...

}

MXML 中定义:

<mx:Metadata>

    [Event(name="DataChange", type="DataChangeEvent")]

</mx:Metadata>

 

DataChangeEvent 事件参数的定义:

import flash.events.Event;

public class DataChangeEvent extends flash.events.Event

{

       public function DataChangeEvent()

       {

              super("DataChange");

       }

       public var Data:Object;

}

 

在自定义控件中定义和触发事件 :

<?xml version="1.0" encoding="utf-8"?>

<mx:Form xmlns:mx="http://www.adobe.com/2006/mxml" width="212" height="56">

  <mx:Metadata>

        [Event(name="DataChange", type="DataChangeEvent")]

    </mx:Metadata>

  <mx:Button label="Button" click="Change()"/>

       <mx:Script>

              <![CDATA[

                     function Change():void

                     {

                            this.dispatchEvent(new DataChangeEvent());

                     }

              ]]>

       </mx:Script>

</mx:Form>

 

容器接收相关自定义控件事件:

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:ns1="*">

      

       <ns1:EmployeeCombo x="146" y="132" DataChange="onChange(event)" >

       </ns1:EmployeeCombo>

       <mx:Script>

              <![CDATA[

                     import mx.controls.Alert;

                     function onChange(e:DataChangeEvent)

                     {

                           

                     }

              ]]>

       </mx:Script>

</mx:Application>

 

其实自定义事件的现实也很简单 , 但起着非常重要的作用;正是因为有了事件的机制,使得大部分重复的功能抽取到自定义控件中,从而达到一个很高的代码重用性。

分享到:
评论

相关推荐

    flex4自定义事件用法

    自定义事件是Flex开发中的一个重要概念,允许开发者扩展内置事件系统,以满足特定项目的需要。下面将详细介绍Flex4自定义事件的用法,以及如何在一个完整的项目中导入和运行。 1. **创建自定义事件类** - 首先,...

    flex自定义组件事件DEMO

    4. 示例学习:在"flex自定义组件事件DEMO"中,你可以看到如何在自定义组件中创建并派发自定义事件,以及如何在其他地方监听和响应这些事件。通过分析代码,可以了解事件生命周期、事件冒泡和捕获的概念,以及如何在...

    flex自定义事件、简单例子说明

    通过上述示例,我们可以看到Flex自定义事件的强大功能及其在实际项目中的应用。自定义事件不仅可以帮助我们更好地组织代码逻辑,还能实现更复杂的交互需求。掌握如何创建和使用自定义事件对于提高Flex应用的开发效率...

    flex 自定义控件、事件

    这个主题聚焦于“flex自定义控件与事件”,这是一个关键的开发概念,特别是对于那些希望深入理解Flex架构和提升应用用户体验的开发者来说。 自定义控件在Flex开发中扮演着重要角色,它们允许开发者根据项目需求创建...

    Flex4自定义组件开发.pdf

    在Flex4中,自定义组件的开发变得尤为重要,因为它允许开发者创建高度定制化的UI组件,以满足特定的应用需求。 #### 二、Spark组件架构剖析 Flex4采用了全新的Spark组件架构,与之前的Flex3(Halo组件架构)相比有...

    flex 高级自定义组件

    Flex中的高级自定义组件开发是构建复杂用户界面的关键技术,它允许开发者超越基本组件的限制,以满足特定的业务需求和视觉设计。在创建高级组件时,了解并掌握一些核心方法的重写至关重要,这些方法涉及到组件的生命...

    Flex自定义组件和事件

    ### 二、Flex自定义事件 #### 1. 为什么需要自定义事件 Flex的内置事件(如 MouseEvent 和 Event)可能不足以满足所有交互需求。自定义事件允许开发者创建具有特定含义和数据的事件,以更好地匹配应用的业务逻辑。...

    flex3自定义DownloadProgressBar

    1. 事件监听:在Flex中,可以使用addEventListener方法监听特定事件,如HTTPService的result或fault事件,或者自定义的下载事件。 2. 进度更新:当接收到下载进度更新事件时,需要调用ProgressBar的...

    Flex Mobile自定义实现的弹出对话框

    在Flex Mobile中,自定义实现弹出对话框是一项常见的需求,这通常涉及到用户交互和界面设计的灵活性。 对话框在移动应用中扮演着重要的角色,它们可以用来显示警告、询问用户输入或者进行一些特殊操作。在Flex ...

    ActionScript的自定义组件及自定义事件例子

    自定义组件和事件在Flex应用程序中发挥着关键作用,使开发者能够构建高度定制的用户界面和交互逻辑。 总的来说,掌握ActionScript的自定义组件和自定义事件是提升Flash和Flex开发技能的重要一步。通过实践和研究...

    flex 事件与自定义事件

    如何接收事件?如何做到AS3.0的标准事件编程? 类似JAVA的监听或观察者模式 Event改变的部分很多,正在想怎样用一个有条理的方式来讲解Event和它相关的诸多内容,让我们感到比较容易理解,记忆和接受。

    Flex手机项目自定义List的ItemRenderer

    在实际项目中,你可以根据需要在自定义的ItemRenderer中添加更多的逻辑,比如事件监听器,以便在用户与列表项交互时执行特定的操作。 总之,通过继承和扩展IconItemRenderer,我们可以实现Flex手机项目的List组件的...

    4、Flex3自定义事件、事件冒泡及传值、组件间的函数回调及传值

    NULL 博文链接:https://futurewwm.iteye.com/blog/1277119

    Flex4视频教程_02-03用AS自定义事件.rar

    本视频教程聚焦于Flex4中ActionScript(AS)的自定义事件使用,这在开发过程中非常重要,因为它允许开发者扩展和定制应用程序的通信机制。 自定义事件是Flex编程中的一个关键概念,它允许开发人员创建具有特定业务...

    flex4自定义组件皮肤

    在Flex4中,自定义组件皮肤是提升应用视觉效果和用户体验的重要手段。下面将详细介绍如何在Flex4中自定义组件皮肤。 1. **组件皮肤的基本概念** - 组件皮肤是Flex中改变组件外观的一种方式,通过定义不同的皮肤,...

    Flex开发自定义控件

    #### 二、Flex自定义控件概述 在Flex中,自定义控件是指根据特定需求构建的新控件,这些控件可以基于现有的Flex标准控件进行扩展,也可以完全从头开始创建。自定义控件的主要优势在于能够提供更符合特定业务场景的...

    Flex4 自定义通用ImageButton

    在Flex4中,自定义组件是一项重要的技能,它允许开发者根据特定需求创建具有独特功能和外观的用户界面元素。本话题聚焦于自定义一个通用的`ImageButton`组件,该组件结合了图像和按钮的功能,提供了更丰富的交互体验...

    Flex4视频教程_02-02用mxml自定义事件.rar

    在"Flex4视频教程_02-02用mxml自定义事件.rar"这个资源中,我们将探讨如何在MXML中定义和使用自定义事件。 首先,理解事件模型的基础至关重要。在Flex中,事件是`flash.events.Event`类的子类。要创建自定义事件,...

    flex4自定义弹出窗口 事件

    flex4自定义弹出窗口 支持最大化 最小化

    Flex 自定义ToolTip

    ### Flex自定义ToolTip详解 在Flex开发中,`ToolTip`是一种非常实用的界面元素,用于在用户悬停或聚焦某个控件时显示额外的信息。默认情况下,Flex提供了基本的`ToolTip`功能,但有时为了满足特定的设计需求或者...

Global site tag (gtag.js) - Google Analytics