Flex中为我们提供的简单实用的Alert组件,可以为我们在项目开发中完成很多的应用控制和提示操作。其功能和Windows Form的MessageBox,JavaScript中的alert()一样,其作用我就不用我多说了。
本文将介绍Flex的Alert组件比较常见的几种应用模式,详细请坐下听我慢慢道来。
最常见的莫过于只做消息提示的功能应用,那Flex的Alert该怎么来实现呢?Flex的Alert组件位于mx.controls包下,Alert类提供了静态的show方法来完成我们常见的功能。使用很简单,如下便是只做消息提示的应用:
internal function onClick():void
{
Alert.show("Hello World!");
}
如果照上面的应用,在弹出的消息对话框中就只有提示消息,对话框没有标题。要让对话框显示标题该怎么办呢?很简单,如下代码示例:
internal function onClickTitle():void
{
Alert.show("Hello World!","这里是标题");
}
或许有人会问,以前做简单的提示操作已经学会了,确实很简单。如果我需要提供两个按扭让我选择,然后根据我的选择做不同的程序控制该怎么做呢?其实这正是我接下来要讲到的,详细见如下代码定义:
internal function onClickConfrm():void
{
Alert.yesLabel="是";
Alert.noLabel="否";
Alert.show("Hello World!","这里是标题",3,this,onCloseHandler);
}
方法的参数很容易理解,第一个为消息内容,第二个为标题显示内容,第三个为标识取值默认为4,第四个为当前Alert组件要显示的父容器,最后一个则为点击Alert组件的按扭(如:是、否、确定、取消等)后的回调函数,或者叫做事件处理函数。如下代码定义(alertResult是个标签组件Label):
internal function onCloseHandler(evt:CloseEvent):void
{
if(evt.detail==Alert.YES)
{
alertResult.text = "你选择的是:“是”!";
}
else
{
alertResult.text = "你选择的是:“否”!";
}
}
最后来看看对话框上出三个按扭(是,否,取消)的应用,代码定义如下:
internal function onClickHandler():void
{
Alert.yesLabel="是";
Alert.noLabel="否";
Alert.cancelLabel="取消";
Alert.show("Hello World!","这里是标题",1|2|8,this,onCloseHandler);
}