这些天一直在研究组件,查了许多相关的资料和教程,把成果拿出来给大家共享,今天介绍一下FLASH的内置组件CheckBox(复选框)的使用方法。
在许多软件中,复选框组件是经常会被用到的,如Visual C++的资源编辑器中我们就可以看见很多的复选框。复选框可以答应我们选择一个或者多个选项,当某选项被选中后,该复选框的小框里就会出现一个小勾。
我们把Components面板中的CheckBox(复选框)组件拖拽到场景中,然后打开它的参数设置面板,如图
在CheckBox组件的参数面板中,各项参数的功能如下:
Label(组件名称):命名复选框组件,如图7所示。
Initialvalue(初始值):初始化组件的状态为选中(true)或是未选中(false)。
Label Placement(对齐方式):设置复选框的可选方式。Left:勾选框在左面,right:勾选框在右边。 如图7所示。
Change Handler(处理函数):执行用户自己定义的函数,该设置选项的参数为用户定义函数的函数名。在函数被调用前,我们需要对它进行定义。
下面我们做一个实例来更加的理解这个组件的使用:
1、首先在拖入两个CheckBox到主场景中。组件的名分别为CheckBox1、CheckBox2。
2、在Label参数选项里我们重新命名这两个个复选框的名字为“flash8”和"flashempire"。Change Handler参数选项分别设置为的“yujia”和“yujia2”字符串就是我们自己定义的一个函数的函数名,也就是这个复选框被执行的时候,这个函数将会被调用。
具体参数设置如图:
CheckBox1
CheckBox2
现在右键单击场景中的第一帧,然后选择Actions命令,在打开的Actions面板中输入如下代码:
//为CheckBox1创建yujia函数
function yujia() {
//复选框被勾选后改变组件名称
CheckBox1.setLabel("闪吧");
//得到复选框的被选状态,复选框被勾选时,n_CheckBox1的值为true
n_CheckBox1 = CheckBox1.getvalue();
//假如复选框未被勾选,则修改组件的名称为“flash8”
if (n_CheckBox1 != true){
CheckBox1.setLabel("flash8");
}
//改变CheckBox2的状态
CheckBox2.setvalue(n_CheckBox1);
CheckBox2.setEnabled(n_CheckBox1);
}
//为CheckBox2创建yujia2函数,代码含义如上
function yujia2() {
CheckBox2.setLabel("闪客帝国");
n_CheckBox2 = CheckBox2.getvalue();
if (n_CheckBox2 != true){
CheckBox2.setLabel("flashempire");
}
}
以上代码中,我们先定义了一个yujia()函数,这个函数的主要功能是在控制组件CheckBox1的同时,对组件CheckBox2也进行着控制。当我们勾选CheckBox1后,复选框CheckBox2也会被勾选,并同时改变两个组件的名称。当CheckBox1不被勾选时,复选框CheckBox2是不可用的。代码中的getvalue()方法是用来获取组件的可选状态的,其返回值为true或false;方法setEnabled()可以设置组件是否可用,假如组件不可用,则呈现灰色不可用状态;方法setLabel()可以改变组件的名称。
效果: