`
happyblue
  • 浏览: 29666 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

flex事件处理探秘

    博客分类:
  • FLEX
阅读更多
Adobe官方给出三种事件处理的机制
  • 在 MXML 中注册事件处理程序
  • 在 MXML 定义中创建线上事件处理程序
  • 通过 ActionScript 注册事件监听器

  • 详见:

    http://www.adobe.com/cn/devnet/flex/quickstart/handling_events/

    其实上面三种处理机制原理上都是采用一种方法来处理的

    就是采用在  ActionScript 注册事件监听器 这个最原始的方法,其他的方式都是它的变种

    比如说:

    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
    
    <mx:Script>
    <![CDATA[
    	private function clickHandler(event:MouseEvent):void {
    		// do something...
    	}
    ]]>
    </mx:Script>
    
    	<mx:Button label="button" click="clickHandler(event)"/>
    </mx:Application>
    


    上面的方法采用在 MXML 中注册事件处理程序来处理事件,编译的时候mxml文件都会生成as文件,就是将上面的事件处理函数都会做以下修改

    public function __test_Button1_click(event:MouseEvent):void {
         clickHandler(event);
    }
    


    将自定义的回调函数放在flex里真正的回调函数里处理,并传递event对象;__test_Button1_click是真正的回调函数


    分享到:
    评论

    相关推荐

    Global site tag (gtag.js) - Google Analytics