使用两种方法为按钮添加事件响应:直接为其添加click属性;为整个程序添加事件监听器。
Demo:
<?
xml version
=
"
1.0
"
encoding
=
"
utf-8
"
?>
< mx:Application xmlns:mx = " http://www.adobe.com/2006/mxml " layout = " absolute "
creationComplete = " createListener() " >
< mx:Panel title = " Currency Converter " x = " 20 " y = " 20 " width = " 450 " height = " 150 " layout = " absolute " >
< mx:Label text = " Price in Dollars " x = " 25 " y = " 37 " />
< mx:TextInput x = " 120 " y = " 35 " id = " txtPrice " />
< mx:Label x = " 120 " y = " 65 " id = " labResult " />
<!-- Use click property to register events for button -->
<!--
< mx:Button label = " Convert to Yen " x = " 290 " y = " 35 " id = " btnConvert " click = " ConvertCurrency() " />
-->
< mx:Button label = " Convert to Yen " x = " 290 " y = " 35 " id = " btnConvert " />
</ mx:Panel >
< mx:Script >
<! [CDATA[
/**/ /*Event function for click property of Button
public function ConvertCurrency():void{
var rate:Number=120;
var price:Number=Number(txtPrice.text);
if(isNaN(price))
{
labResult.text="Input a valid number!";
}else{
price=price*rate;
labResult.text="Price in Yen:"+String(price);
}
}
*/
public function createListener(): void ... {
btnConvert.addEventListener(MouseEvent.CLICK,ConvertCurrency);
}
public function ConvertCurrency(e:Event): void ... {
var rate:Number=120;
var price:Number=Number(txtPrice.text);
if(isNaN(price))...{
labResult.text="Input a valid number!";
}else...{
price=price*rate;
labResult.text="Price in Yen:"+String(price);
}
}
]] >
</ mx:Script >
</ mx:Application >
< mx:Application xmlns:mx = " http://www.adobe.com/2006/mxml " layout = " absolute "
creationComplete = " createListener() " >
< mx:Panel title = " Currency Converter " x = " 20 " y = " 20 " width = " 450 " height = " 150 " layout = " absolute " >
< mx:Label text = " Price in Dollars " x = " 25 " y = " 37 " />
< mx:TextInput x = " 120 " y = " 35 " id = " txtPrice " />
< mx:Label x = " 120 " y = " 65 " id = " labResult " />
<!-- Use click property to register events for button -->
<!--
< mx:Button label = " Convert to Yen " x = " 290 " y = " 35 " id = " btnConvert " click = " ConvertCurrency() " />
-->
< mx:Button label = " Convert to Yen " x = " 290 " y = " 35 " id = " btnConvert " />
</ mx:Panel >
< mx:Script >
<! [CDATA[
/**/ /*Event function for click property of Button
public function ConvertCurrency():void{
var rate:Number=120;
var price:Number=Number(txtPrice.text);
if(isNaN(price))
{
labResult.text="Input a valid number!";
}else{
price=price*rate;
labResult.text="Price in Yen:"+String(price);
}
}
*/
public function createListener(): void ... {
btnConvert.addEventListener(MouseEvent.CLICK,ConvertCurrency);
}
public function ConvertCurrency(e:Event): void ... {
var rate:Number=120;
var price:Number=Number(txtPrice.text);
if(isNaN(price))...{
labResult.text="Input a valid number!";
}else...{
price=price*rate;
labResult.text="Price in Yen:"+String(price);
}
}
]] >
</ mx:Script >
</ mx:Application >