Jun 26

接下来的例子演示了Flex中利用labelChanged事件,检测一个按钮(Button)控件中的标签(Label)是否被改变。需要注意的是,labelChanged事件由于基本上不需要直接调用,公开的文档中并没有。还需要注意的是Button类有一个Private的Boolean类型的labelChanged属性,所以用ActionScript来代替MXML的话需要创建一个labelChanged事件句柄。

让我们先来看一下Demo(可以右键View Source或点击这里察看源代码):


下面是完整代码(或点击这里察看):

Download: main.mxml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
  3.         layout="vertical"
  4.         verticalAlign="middle"
  5.         backgroundColor="white"
  6.         initialize="init();">
  7.  
  8.     <mx:Script>
  9.         <![CDATA[
  10.             import mx.controls.Alert;
  11.  
  12.             private function init():void {
  13.                 button.addEventListener("labelChanged", button_labelChanged);
  14.             }
  15.  
  16.             private function button_labelChanged(evt:Event):void {
  17.                 Alert.show(evt.toString());
  18.             }
  19.         ]]>
  20.     </mx:Script>
  21.  
  22.     <mx:ApplicationControlBar dock="true">
  23.         <mx:Button label="One" click="button.label = 'One';" />
  24.         <mx:Button label="Two" click="button.label = 'Two';" />
  25.     </mx:ApplicationControlBar>
  26.  
  27.     <mx:Button id="button" label="Button" />
  28.  
  29. </mx:Application>
代码:Peter deHaan 翻译/整理/编译:minidxer

written by Minidxer  |  tags: , , ,

Related Post

Leave a Reply