本文章来源:PConline网络学院,转载请联系PConline网络学院
2.1 CheckBox(复选框)
在许多软件中,复选框组件是经常会被用到的,如Visual C++的资源编辑器中我们就可以看见很多的
复选框。复选框可以允许我们选择一个或者多个选项,当某选项被选中后,该复选框的小框里就会出现一个小勾。
我们把Components面板中的CheckBox(复选框)组件拖拽到场景中,然后打开它的参数设置面板,如图5所示。
width=500 height=86 border=0> 图5
同样的,你也可以选择Window菜单下的Component Parameters命令,或是按快捷键Alt+F7调出Component Parameters(组件参数)面板来设置组件的参数,如图6所示。
width=224 height=158 border=0> 图6
在CheckBox组件的参数面板中,各项参数的功能如下:
Label(组件名称):命名复选框组件,如图7所示。
InitialValue(初始值):初始化组件的状态为选中(true)或是未选中(false)。
width=300 height=176 border=0> 图7
Alignment(对齐方式):设置复选框的可选方式。Left:勾选框在左面,right:勾选框在右边。 如图7所示。
Change Handler(处理函数):执行用户自己定义的函数,该设置选项的参数为用户定义函数的函数名。在函数被调用前,我们需要对它进行定义。
现在我们看一个简单的组件效果。该效果中,当我们选中组件“CheckBox1”时,组件“CheckBox2”也会同时被选中。当组件“CheckBox1”不被选中的时候,组“CheckBox2”也不被选中,而且会变成灰色,即该组件不可用,但两个组件的名称都会改变,效果如图8所示。但选择组件“CheckBox2”却不会影响到组件“CheckBox1”,效果如图9所示。
width=250 height=159 border=0> 图8
width=250 height=159 border=0> 图9
这个实例的具体做法如下:
首先按快捷键Ctrl+F7打开Components面板,然后用鼠标左键的按住
图10
在Label参数选项里我们重新命名这个复选框的名字为“Paris”。Change Handler参数选项里设置的“func”字符串就是我们自己定义的一个函数的函数名,也就是这个复选框被执行的时候,这个函数将会被调用。
再拖拽一个复选框组件到场景中,然后在Component Parameters面板进行如图10所示的参数设置。“func2”也是自定义的函数。
图10
现在右键单击场景中的第一帧,然后选择Actions命令,在打开的Actions面板中输入如下代码:
//为CheckBox1创建func函数
function func() {
//复选框被勾选后改变组件名称
CheckBox1.setLabel("巴黎");
//得到复选框的被选状态,复选框被勾选时,n_CheckBox1的值为true
n_CheckBox1 = CheckBox1.getValue();
//如果复选框未被勾选,则修改组件的名称为“Paris”
if (n_CheckBox1 != true){
CheckBox1.setLabel("Paris");
}
//改变CheckBox2的状态
CheckBox2.setValue(n_CheckBox1);
CheckBox2.setEnabled(n_CheckBox1);
}
//为CheckBox1创建func2函数,代码含义如上
function func2() {
CheckBox2.setLabel("伦敦");
n_CheckBox2 = CheckBox2.getValue();
if (n_CheckBox2 != true){
CheckBox2.setLabel("London");
}
}
以上代码中,我们先定义了一个func()函数,这个函数的主要功能是在控制组件CheckBox1的同时,对组件CheckBox2也进行着控制。当我们勾选CheckBox1后,复选框CheckBox2也会被勾选,并同时改变两个组件的名称。当CheckBox1不被勾选时,复选框CheckBox2是不可

