`
nianshi
  • 浏览: 420557 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Flex自定义事件使用心得(入门级)

    博客分类:
  • Flex
阅读更多


由于工作关系,只能简单整理下曾经做项目的心得,这里先谈谈As3.0的自定义事件。

对初学者可能感觉自定义很复杂,但等你克服恐惧真的用多了的话就会发觉其实自定义事件很简单,但正是简单的它可以让你的程序更灵活。

首先打开一个Flex项目 新建一个As类 让他继承Event,自动会生成一下代码:
view plaincopy to clipboardprint?

   1. package com.event 
   2. { 
   3.     import flash.events.Event; 
   4.     public class myEvent extends Event 
   5.     { 
   6.         public function myEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=false) 
   7.         { 
   8.             super(type, bubbles, cancelable); 
   9.         } 
  10.          
  11.     } 
  12. } 

package com.event { import flash.events.Event; public class myEvent extends Event { public function myEvent(type:String, bubbles:Boolean=false, cancelable:Boolean=false) { super(type, bubbles, cancelable); } } }

其中type是事件名 bubbles是是否冒泡,cancelable是指示是否可以组织事件对象默认行为。

对于不需要的参数可以去除,重写构造函数。如下:

   1. package com.event 
   2. { 
   3.     import flash.events.Event; 
   4.     public class tempEvent extends Event 
   5.     { 
   6.         public var parm1:int; 
   7.         public var parm2:String; 
   8.         public var parm3:Boolean; 
   9.         public function tempEvent(type:String, parm1:int,parm2:String,parm3:Boolean) 
  10.         { 
  11.             super(type); 
  12.             this.parm1=parm1; 
  13.             this.parm2=parm2; 
  14.             this.parm3=parm3; 
  15.         } 
  16.          
  17.     } 
  18. } 

package com.event { import flash.events.Event; public class tempEvent extends Event { public var parm1:int; public var parm2:String; public var parm3:Boolean; public function tempEvent(type:String, parm1:int,parm2:String,parm3:Boolean) { super(type); this.parm1=parm1; this.parm2=parm2; this.parm3=parm3; } } }

我自己定义了3个需要传递的参数,同时重写构造函数,这样一个自定义事件就完成了,是不是很简单。

知道怎么定义, 让我们看看怎么使用:

平时我们派发事件是用Event: dispatchEvent(new Event("type"));

自定义事件继承了Event,同样的:dispatchEvent(new myEvent("type",1,"1",false));

是不是也很简单

那它能为我们带来什么方便呢?

1。Event只能做到事件的派发与接收,不能做到灵活的数据传递,而自定义事件可以很容易的弥补这一不足。

2。 Event只能通过target和currentTarget得到事件对象,而有时候他们中没有一个是你想要的事件对象,那怎么办呢?自定义事 件可以很方便的解决这一问题,在自定义事件内定义属性o:Object,在事件派发的时候把想要得到的事件对象作为参数派发出去,这样你就可以在接受事件 的时候通过evt.o得到你想要的对象了。

习惯使用自定义事件你会发现Flex的事件机制不再那么神秘。

PS:

当然尽管方便,但如无必要尽量使用Event,因为过多的自定义事件会让你的代码繁杂不堪。
分享到:
评论

相关推荐

    flex4自定义事件用法

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

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

    ### Flex自定义事件详解 Flex 是一款用于构建和部署跨平台桌面应用与移动应用的开源框架,它基于Adobe Flash Platform。...掌握如何创建和使用自定义事件对于提高Flex应用的开发效率和维护性至关重要。

    flex自定义组件事件DEMO

    这个"flex自定义组件事件DEMO"提供了关于如何创建和管理自定义组件事件的实际示例。下面我们将详细探讨Flex自定义组件、事件处理以及如何通过示例进行学习。 1. Flex自定义组件:Flex允许开发者通过继承现有的...

    flex 自定义控件、事件

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

    Flex自定义组件和事件

    在Flex中,自定义组件和事件的使用对于创建功能丰富的用户界面至关重要。下面我们将详细探讨这两个主题。 ### 一、Flex自定义组件 #### 1. 创建自定义组件的原因 在Flex应用中,有时标准组件库提供的组件无法满足...

    Flex 自定义组件ImageViewer

    在Flex中,自定义组件是开发者根据项目需求创建的特殊UI元素,可以扩展和定制标准的MX或Spark组件。本示例着重于一个名为“ImageViewer”的自定义组件,这通常是一个用于展示图像并可能包含缩放、平移等交互功能的...

    flex 自定义组件

    Flex自定义组件是Adobe Flex框架中的一个重要特性,它允许开发者创建具有特定功能和外观的UI元素,以满足项目中独特的用户界面需求。Flex是一个开源的、基于MXML和ActionScript的开发框架,主要用于构建富互联网应用...

    Flex 自定义ToolTip

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

    flex 高级自定义组件

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

    Flex自定义加载条(小起)

    在本文中,我们将深入探讨如何在Flex...总结来说,自定义Flex加载条是一项涉及组件样式、模板、动画和事件处理的综合工作。通过学习和实践这个示例,你可以掌握如何根据项目需求定制出独特的加载条组件,提升用户体验。

    flex自定义树形结构

    本篇文章将深入探讨如何在Flex环境中自定义实现一个具备展开、收缩功能的多级目录树形结构。 首先,让我们理解`Flex`布局。Flex布局,全称为Flexible Box,是一种用于容器中元素的布局模型,旨在提供更好的灵活性,...

    各种Flex自定义组件

    在Flex中,自定义组件是开发人员为了满足特定需求而创建的特殊用户界面元素。这些组件可以扩展标准的Flex组件库,或者从头开始构建,以提供独特的功能和视觉表现。 在标题“各种Flex自定义组件”中,我们可以推断这...

    flex 自定义进度条

    标题提到的"flex 自定义进度条",指的是利用Flex布局技术来设计一个可定制的进度条组件。Flex布局,全称为Flexible Box布局,是一种在CSS3中引入的布局模型,旨在提供更灵活的盒状模型布局方式,尤其适合在不同屏幕...

    Flex 自定义 时间 日历 控件

    Flex 自定义 时间 日历 控件

    flex自定义组件介绍

    标题中的“flex自定义组件介绍”指的是在Adobe Flex框架中创建和使用自定义组件的过程。Flex是一个基于ActionScript和MXML的开源框架,用于构建富互联网应用程序(RIA)。自定义组件允许开发者根据特定需求扩展Flex...

    FLEX自定义等待图标资源

    自定义等待图标资源是FLEX开发中的一个重要组成部分,因为默认的等待图标可能无法满足所有设计需求。在这个压缩包中,提供了18个SWF(Shockwave Flash)资源和19个GIF(Graphics Interchange Format)资源,这些都是...

    Flex 自定义公共包

    Flex 自定义公共包,可以在项目里直接使用

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

    3. **派发事件**:在需要触发事件的地方,使用`dispatchEvent()`方法发送自定义事件。 4. **监听事件**:在接收方组件中,使用`addEventListener()`方法添加事件监听器,处理自定义事件。 在提供的“WinCCALLMine”...

    Flex自定义编辑项目

    Flex自定义编辑项目是一种基于Adobe Flex技术的开发工具,它为用户提供了一种类似于Flash IDE的交互体验。这个项目的核心特点是其高度的可定制性,允许开发者进行多种视觉元素的编辑操作,如拖拽、放大、缩小、添加...

    Flex 事件机制,flex入门学习

    【Flex 事件机制详解】 Flex 事件机制是 Flex 应用程序中不可或缺的一部分,它使得组件之间能够有效地通信,响应用户交互以及管理应用程序状态。在深入理解 Flex 事件机制之前,我们需要先了解一下基本概念。 1. *...

Global site tag (gtag.js) - Google Analytics