问答题 在考生文件夹下有一个工程文件sjt3. vbp,窗体上已经有两个文件框,名称分别为Text1、Text2;还有一个命令按钮,名称为C1,标题为“确定”;请添加两个单选按钮,名称分别为Op1、Op2,标题分别为“男生”、“女生”,再添加两个复选框,名称分别为Ch1、Ch2,标题分别为“体育”、“音乐”。请编写适当的事件过程,使得程序在运行时,单击“确定”按钮后实现下面的操作:
①根据选中的单选按钮,在Text1中显示“我是男生”或“我是女生”。
②根据选中的复选框,在Text2中显示“我的爱好是音乐”或“我的爱好是体育”或“我的爱好是体育音乐”。如图所示。
注意:不得修改已经给出的程序和已有控件的属性。在结束程序运行之前,必须选中一个单选按钮和至少一个复选框,并单击“确定”按钮。必须使用窗体右上角的关闭按钮结束程序,否则无成绩。
【正确答案】[解题思路] 容器控件(如窗体和框架)中的单选按钮组(OptionButton)常用于提供多个选项间的唯一性选择,其Value属性用于设置或返回每个单选按钮的选中状态:值为False表示未选中,值为True表示选中。复选框(CheckBox)组常用于提供多个选项间的多重选择,Value属性值决定每个复选框的选中状态:0-Unchecked为未选中,1-Checked为选中,2-Grayed为禁用。
根据题意,可用一个If...Then...End If语句对Op1和Op2的选中情况进行处理,在Text1中显示对应信息;用两个If...Then语句依次对两个复选框的选中情况进行处理,并在Text2中显示对应信息。
[操作步骤]
步骤1:打开本题工程文件,并设置控件的属性。程序中用到的控件及属性见表1。
表1
控件 单选按钮1 单选按钮2 复选框1 复选框2
属性 Name Caption Name Caption Name Caption Name Caption
设置值 Op1 男生 Op2 女生 Ch1 体育 Ch2 音乐
步骤2:分析并编写程序代码。
程序提供代码
Private Sub Form_Unload(Cancel As Integer)
Open App. Path & " /out3. txt" For Output As #1
Print #1, Op1. Value, Op2. Value, Text1. Text
Print #1, Ch1. Value, Ch2. Value, Text2. Text
Close #1
End Sub
程序结束
参考答案
Private Sub C1_Click()
If Ch2. Value And Ch1. Value Then
Text2 = "我的爱好是体育音乐"
ElseIf Ch2. Value And Ch1. Value = False Then
Text2 = "我的爱好是音乐"
ElseIf Ch1. Value And Ch2. Value = False Then
Text2 = "我的爱好是体育"
Else
Text2 = " "
End If
If Op1. Value Then
Text1 = "我是男生"
ElseIf Op2. Value Then
Text1 = "我是女生"
Else
Text1 = " "
End If
End Sub
步骤3:调试并运行程序,关闭程序后按题目要求存盘。
【答案解析】