问题
在场景中有Alert 组件时如何来控制他的属性,以及怎么通过Button 组件与Alert 组件配合使用
解决思路
Aletr 组件是出现一个窗口加一个确定和一个否定按钮的窗口。可以自定义窗口标签,文本,按钮大小和高度的。窗口有四个按钮可供选择:Yes,No,Ok和Cancel。你可以通过Alert.yesLabel , Alert.noLabel , Alert.okLabel 和 Alert.cancelLabel四个改变按钮属性,但是不能改变按钮顺序。按钮顺序依次是Yes,No,Ok和Cancel。
想要出现Alert组件窗口,一定要通过Alert.show()方法。同时库中必须有Alert组件
具体步骤
1. 继续使用1.1中的Button的fla文件,如果你已经关闭了前面的Button文件请在电脑中找到该fla文件打开
2. 在场景中拖拽一个Alter Component 组件
技巧:你也可以不删除Alert组件,给Alert组件起一个名称,然后在visible属性设置为不可见(false)。
提示:Alert 组件在库中有固定的链接名称就是Alert
4.场景中没有了Alter组件怎么调用了?很容易,Alter组件完全受到代码的控制,在场景中的action层的第一帧写下下面的代码就完全解决了问题
// 加载 Alert class
import mx.controls.Alert;
// 创建一个新的Button目标
myButtonListener = new Object();
// 在myButtonListener目标创建一个新的click事件
myButtonListener.click = function ()
{
// 显示一个警告窗口
// 警告窗口显示警告内容“你好,现在跳出了警告窗口!”
// 警告窗口标题显示“警告提示框”
// 警告窗口显示“NO”和“CANCEL”提示按钮
//“NO”为缺省按钮
Alert.show
(
"你好,现在跳出了警告窗口!!",
"警告提示框",
Alert.NO | Alert.CANCEL,
_root, alertHandler,
Alert.NO
);
}
//安排myButtonListener事件
// 加载click于mybutton按钮
mybutton.addEventListener("click", myButtonListener );
// 创建alert回应
alertHandler = function ( theEvent )
{
// 控制两个按钮触发事件
if (theEvent.detail == Alert.NO)
{
// no 按钮
trace ("你按下了no按钮! ");
}
else if (theEvent.detail == Alert.CANCEL)
{
// cancel 按钮
trace ("你按下了cancel按钮!");
}
}
提示:
· Alert.show表示当按钮点击以后Alert组件跳出
注意:“import mx.controls.Alert”语句是AS 2.0语句表示该AS应用了Flash MX 2004自带的action class ,表示提取库中的Alest组件
5.测试影片(Ctrl+Enter)按下确定按钮就会跳出Alert警告窗口
当你按下NO和Cancel按钮分别会跳出两个trace信息
6.有读者在想如果我想改变跳出窗口的大小该怎么作了?容易只要在myButtonListener.click 里加上下列代码就可以了
// 设定警告窗口按钮宽度
200Alert.buttonWidth = 200;
// 设定警告窗口按钮高度
150Alert.buttonHeight = 150;
7.测试影片(Ctrl+Enter)你就会发现警告窗口发生了变化
2Alert.fla
特别提示
Alert组件适用于各类弹出错误信息,提示信息等等。Alert组件是通过参数成分来设置自己本身。它的上级一定是UIComponet。 如果它是电影修剪,你必须通过AS登记 mx.core 。从此可以看出它完全是继承了UIComponet。注意窗户水平地自动地伸展适合信息本文或被显示的任何钮扣。 如果你显示大量的本文,包括本文的休息线。
注意Alert组件不回应setSize()的方法