Mar 16

在前面的Flex中用Alert.show()来显示对话框(Alert)的例子中演示了如何创建一个最基本的对话框(Alert dialog),现在我们来看一下如何检测用户按下了对话框中的哪一个按钮(Yes or No)。

另外,这个例子并不是什么复杂的或者让人惊叹的效果,它演示了你可以如何在Flex应用中,创建一些基本的逻辑来提交(commit)或者拒绝(reject)用户的反馈动作(feedback)。

下面是具体的源代码:


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.  
  7.     <mx:Script>
  8.         <![CDATA[
  9.             import mx.controls.Alert;
  10.             import mx.events.CloseEvent
  11.  
  12.             private var alert:Alert
  13.  
  14.             private function showAlert():void {
  15.                 var text:String = "Lorem ipsum dolor sit amet, consectetuer adipiscing elit.nntHello World";
  16.                 var title:String = "This is the title of the Alert window"
  17.  
  18.                 alert = Alert.show(text, title, Alert.YES | Alert.NO);
  19.                 alert.addEventListener(CloseEvent.CLOSE, alert_close)
  20.  
  21.                 message.text = "";
  22.             } 
  23.  
  24.             private function alert_close(evt:CloseEvent):void {
  25.                 switch (evt.detail) {
  26.                     case Alert.CANCEL:
  27.                         message.text = "You pressed `" + Alert.cancelLabel + "`.";
  28.                         break;
  29.                     case Alert.NO:
  30.                         message.text = "You pressed `" + Alert.noLabel + "`.";
  31.                         break;
  32.                     case Alert.OK:
  33.                         message.text = "You pressed `" + Alert.okLabel + "`.";
  34.                         break;
  35.                     case Alert.YES:
  36.                         message.text = "You pressed `" + Alert.yesLabel + "`.";
  37.                         break;
  38.                 }
  39.             }
  40.         ]]>
  41.     </mx:Script> 
  42.  
  43.     <mx:Button label="Alert.show()" click="showAlert();" />
  44.     <mx:Label id="message" /
  45.  
  46. </mx:Application>
原文作者:Peter deHaan 翻译:minidxer

written by Minidxer  |  tags: , , , , , ,

Related Post

Leave a Reply