Flex自定义事件用法指南

开发 后端
本文向大家介绍一下Flex自定义事件的概念,在Flex中Flex自定义事件有两中情况,分别是ActionScript和MXML中定义。

本文和大家重点讨论一下Flex自定义事件的用法,事件是一个非常有用的功能,通常用于信息传递交互大大提高程序编写的灵活性。

Flex自定义事件

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

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

在ActionScript中定义:

  1. [Event(name="myEnableEvent",type="flash.events.Event")]  
  2.  
  3. publicclassMyComponentextendsUIComponent  
  4.  
  5. {  
  6.  
  7. ...  
  8.  
  9. }  
  10.  

Flex自定义事件在MXML中定义:

  1. <mx:Metadata> 
  2.  
  3. [Event(name="DataChange",type="DataChangeEvent")]  
  4.  
  5. </mx:Metadata> 
  6.  

 DataChangeEvent事件参数的定义:

  1. importflash.events.Event;  
  2.  
  3. publicclassDataChangeEventextendsflash.events.Event  
  4.  
  5. {  
  6. publicfunctionDataChangeEvent()  
  7.  
  8. {  
  9. super("DataChange");  
  10. }  
  11.  
  12. publicvarData:Object;  
  13. }  
  14.  
  15.  

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

  1. <?xmlversionxmlversion="1.0"encoding="utf-8"?> 
  2.  
  3. <mx:Formxmlns:mxmx:Formxmlns:mx="http://www.adobe.com/2006/mxml"width="212"height="56"> 
  4.  
  5. <mx:Metadata> 
  6.  
  7. [Event(name="DataChange",type="DataChangeEvent")]  
  8.  
  9. </mx:Metadata> 
  10.  
  11. <mx:Buttonlabelmx:Buttonlabel="Button"click="Change()"/> 
  12.  
  13. <mx:Script> 
  14.  
  15. <![CDATA[  
  16.  
  17. functionChange():void  
  18.  
  19. {  
  20.  
  21. this.dispatchEvent(newDataChangeEvent());  
  22.  
  23. }  
  24.  
  25. ]]> 
  26.  
  27. </mx:Script> 
  28.  
  29. </mx:Form> 
  30.  

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

  1. <mx:Applicationxmlns:mxmx:Applicationxmlns:mx="http://www.adobe.com/2006/mxml"layout="absolute"xmlns:ns1="*"> 
  2.  
  3. <ns1:EmployeeComboxns1:EmployeeCombox="146"y="132"DataChange="onChange(event)"> 
  4.  
  5. </ns1:EmployeeCombo> 
  6.  
  7. <mx:Script> 
  8.  
  9. <![CDATA[  
  10.  
  11. importmx.controls.Alert;  
  12.  
  13. functiononChange(e:DataChangeEvent)  
  14.  
  15. {  
  16.  
  17. }  
  18.  
  19. ]]> 
  20.  
  21. </mx:Script> 
  22.  
  23. </mx:Application> 
  24.  

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

【编辑推荐】

  1. 解析Flex渲染器的使用
  2. Flex主题创建及支持的样式设置方式
  3. 全面认识Flex应用程序的六大元素
  4. 揭开Flex正则表达式的神秘面纱
  5. Flex数据绑定及其使用频繁的几种情况 

 

 

责任编辑:佚名 来源: 163.com
相关推荐

2010-08-04 14:07:59

Flex事件机制

2010-08-12 15:20:49

Flex Builde

2010-08-09 12:42:16

Flex module

2010-07-30 10:13:38

Flex控件

2010-07-28 14:59:26

Flex字符串

2010-08-05 10:29:11

Flex效果

2010-07-27 10:19:28

Flex

2010-08-03 10:40:29

Flex代码格式化

2010-08-13 12:54:20

Flex弹出窗口

2013-02-18 13:44:22

CSSSASSWeb

2010-07-26 17:09:00

Perl模块

2010-07-26 14:54:07

Perlsplit函数

2010-07-26 15:27:50

Perl foreac

2010-08-10 14:18:15

RationalFunFlex

2010-07-21 10:10:50

Perl split函

2010-08-16 15:11:02

DIV

2010-07-19 15:25:39

Perl标量转换函数

2010-07-23 15:51:27

Perl开发工具

2010-07-21 09:38:51

2009-08-04 09:56:46

C#事件处理自定义事件
点赞
收藏

51CTO技术栈公众号