Flex事件(一)

        Flex中文资料确实不好找,这是看了一位高人翻译的入门级的电子书后做的一点练习以及经验。

 

        Adobe® Flex™应用程序是事件驱动的。当用户与界面组件交互时事件会通知程序员,当一个组件的外观或者生命周期发生重要改变,比如创建或者销毁一个容器,或改变一个容器的大小的时候,事件也会通知程序员。
当一个组件的实例分派一个事件时,你为那个事件注册的监听器对象就会被通知。你可以在ActionScript中定义事件监听器(或者叫做事件处理器)来处理事件。你既可以在MXML声明中为一个组件注册事件监听器,也可以在ActionScript中实现相同的功能。
接收事件通知有三种方式:
1. 在MXML中注册一个事件处理器
2.在MXML中创建一个内联(inline)的事件处理器
3.通过ActionScript注册一个事件处理器

 

 

1. 在MXML中注册一个事件处理器

  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
  3.                 horizontalAlign="center" verticalAlign="middle"
  4.                 viewSourceURL="src/HandlingEventsEventHandler/index.html">
  5. <mx:Script>
  6.     <![CDATA[
  7.         import flash.events.MouseEvent;
  8.         
  9.         private function clickHandler(event:MouseEvent ):void
  10.         {
  11.             
  12.             myLabel.text="New Label Text!"+event.localX;
  13.         }
  14.         private function aHandler(event:MouseEvent):void
  15.         {
  16.             myLabel.text="X=" + event.localX + " Y=" + event.localY;
  17.         }
  18.     ]]>
  19. </mx:Script>
  20. <mx:VBox >
  21.     <mx:Panel 
  22.         title="My Application" horizontalAlign="center"
  23.         paddingTop="10" paddingBottom="10" paddingLeft="10"
  24.         paddingRight="10" >
  25.     
  26.     <mx:Label id="myLabel" width="100%" fontWeight="bold" />
  27.     <mx:Button id="myButton" label="Click Me!" mouseMove="aHandler(event);" click="clickHandler(event);" /> 
  28.     
  29.     </mx:Panel>
  30.     
  31. </mx:VBox>
  32. </mx:Application>

 

点击按钮后:

移动鼠标时(在按钮范围内,若要在整个页面没有效,请将Button中的mouseMove属性写在<mx:Application>中):

 

 

使用这种方法是,添加监听即在mxml标签中添加,即使用系统提供的几种事件属性如click,mouseMove等对事件监听。

只需在这些属性中写一个类似XXX(event)的函数即可,但是别忘了在<mx:Script></mx:Script>中定义这样一个方法,方法体即写你想在此事件发生时做的事。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值