加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Flex自定义事件用法指南

发布时间:2020-12-15 01:17:33 所属栏目:百科 来源:网络整理
导读:转载自:http://developer.51cto.com/art/201008/218947.htm 本文向大家介绍一下Flex自定义事件的概念,在Flex中Flex自定义事件有两中情况,分别是ActionScript和MXML中定义。 AD: 本文和大家重点讨论一下Flex自定义事件的用法,事件是一个非常有用的功能,

转载自:http://developer.51cto.com/art/201008/218947.htm

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

AD:

本文和大家重点讨论一下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自定义事件的现实也很简单,但起着非常重要的作用;正是因为有了事件的机制,使得大部分重复的功能抽取到自定义控件中,从而达到一个很高的代码重用性。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读