FLEX3 Alert.show()属性---flags用法补遗
由于翻查基本相关书籍以及Flex3官方文档均没有详细说明,所以这里记录一下,以作补遗。
Alert.show()里面有多个属性,其中排在第三是flags,这个属性作用是在弹出的Alert提示框里面显示那一个或多个按钮,文档和书籍一般只写该属性可以自由组合 Alert.OK, Alert.CANCEL ,Alert.YES ,Alert.NO四个选项,并用“|”分隔,其实也可以用数字编号代替的,用数字编号更为简便,以下是编号对应的按钮组合表,一共有16个数字编号(其实只有15种组合)。
1- Alert.YES
2- Alert.NO
3- Alert.YES | Alert.NO
4- Alert.OK
5- Alert.OK | Alert.YES
6- Alert.OK | Alert.NO
7- Alert.OK | Alert.YES | Alert.NO
8- Alert.CANCEL
9- Alert.YES | Alert.CANCEL
10- Alert.NO | Alert.CANCEL
11- Alert.YES | Alert.NO | Alert.CANCEL
12- Alert.OK | Alert.CANCEL
13- Alert.OK | Alert.YES | Alert.CANCEL
14- Alert.OK | Alert.NO | Alert.CANCEL
15- Alert.OK | Alert.YES | Alert.NO | Alert.CANCEL
16- Alert.OK (和4一样)
17开始返回到1重新按顺序循环………..而flags属性不填写的话一般默认值为Alert.OK,也就是4或16。
例子:
//响应删除事件
private function doDelete():void
{
Alert.yesLabel="确定";
Alert.noLabel="取消";
Alert.show("是否确定删除选中记录?","删除记录",3,this,deleteCallBack);
}
//具体执行删除操作
private function deleteCallBack(event:CloseEvent):void
{
if(event.detail == Alert.YES)
{
Alert.okLabel="确定";
Alert.show("删除成功!");
}
} ===================================================================================== Alert.show()使用方式
<?xml version=”1.0″?>
<!– Simple example to demonstrate the Alert control. –>
<mx:Application xmlns:mx=”http://www.adobe.com/2006/mxml”>
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.events.CloseEvent;
// Event handler function uses a static method to show
// a pop-up window with the title, message, and requested buttons.
private function clickHandler(event:Event):void {
Alert.show("Do you want to save your changes?", "Save Changes", 3, this, alertClickHandler);
}
// Event handler function for displaying the selected Alert button.
private function alertClickHandler(event:CloseEvent):void {
if (event.detail==Alert.YES)
status.text="You answered Yes";
else
status.text="You answered No";
}
// Event handler function changes the default Button labels and sets the
// Button widths. If you later use an Alert with the default Buttons,
// you must reset these values.
private function secondClickHandler(event:Event):void {
Alert.buttonWidth = 100;
Alert.yesLabel = "Magenta";
Alert.noLabel = "Blue";
Alert.cancelLabel = "Green";
Alert.show("Select a color:","Color Selection",1|2|8,this);
// Set the labels back to normal:
Alert.yesLabel = "Yes";
Alert.noLabel = "No";
}
]]>
</mx:Script>
<mx:Panel title=”Alert Control Example” width=”75%” horizontalAlign=”center” paddingTop=”10″>
<mx:Text width=”100%” color=”blue” textAlign=”center”
text=”Click the button below to display a simple Alert window.”/>
<mx:Button label=”Click Me” click=”Alert.show(‘Hello World!’, ‘Message’);”/>
<mx:Text width=”100%” color=”blue” textAlign=”center”
text=”Click the button below to display an Alert window and capture the button pressed by the user.”/>
<mx:Button label=”Click Me” click=”clickHandler(event);”/>
<mx:Label id=”status” fontWeight=”bold”/>
<mx:Text width=”100%” color=”blue” textAlign=”center”
text=”Click the button below to display an Alert window that uses custom Button labels.”/>
<mx:Button label=”Click Me” click=”secondClickHandler(event);”/>
</mx:Panel>
</mx:Application>
第一个alert
Alert.show(message,title);// 首参数为要弹出的对话框的内容,第二个参数为要弹出对话框的标题
第二个Alert
Alert.show(“Do you want to save your changes?”, “Save Changes”, 3, this, alertClickHandler); 首参数为要弹出的对话框的内容;第二个参数为要弹出对话框的标题;第三个参数指定可显示的button(可显示的button共四个分别为Alert.YES,Alert.NO,Alert.OK,Alert.CANCEL 他们的二进制值分别为1,2,4,8),也可以显示多个button,最多可显示四个,以安位或的型式相连:Alert.YES|Alert.NO |Alert.OK|Alert.CANCEL,或者取她们相或之后的二进制数,比如本例中取了Alert.YES与Alert.NO相或后的二进制数, 默认值为Alert.OK;第四个参数为Alert组件的父组件;第五个参数为button的单击响应事件或者称为Alert组件的关闭响应事件,默认值为null即无任何操作
第三个alert
Alert.show(“Select a color:”,”Color Selection”,1|2|8,this);可以更改Alert弹出对话框中button的label值,在alert组件中定义了每个button的label属性,例如:Alert.yesLabel,Alert.noLabel
,通过指定他们的值就可以更改对应button的label值,在本例中1|2|8指的是显示yes,no,cancel三个button
这三个Alert.show()是同一个方法,只是每个在用的时候省略了不同的参数,这个根据不同的需求来定
转载:http://bqsongning.blog.163.com/blog/static/115471473201029112722577/