问题 单项选择题

设工程中有2个窗体:Form1、Form2、Form1为启动窗体。Form2中有菜单,其结构如表所示。要求在程序运行时,在Form1的文本框Text1中输入口令并按回车键(回车键的Ascii码为13)后,隐藏Form1,显示Form2。若口令为“Teacher”,所有菜单项都可见,否则看不到“成绩录入”菜单项。为此,某人在Form1窗体文件中编写如下程序:
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii=13 Then
If Text1.Text="Teacher"Then
Form2.Input.Visible=True
Else
Form2.Input.Visible=False
End If
End If
Form1.Hide
Form2.Show
End Sub


程序运行时发现刚输入口令时就隐藏了Form1,显示了Form2,程序需要修改。下面修改方案中正确的是( )

A.把Form1中Text1文本框及相关程序放到Form2窗体中
B.把Form1.Hide、Form2.Show两行移动至2个End If之间
C.把If KeyAscii=13 Then改为If KeyAscii="Teacher"Then
D.把2个Form2.Input.Visible中的"Form2."删去

答案

参考答案:B

解析: 本题要在输入口令并回车后隐藏Form1,显示Form2。本题第2个If的意思为当口令为Teacher时,则Form2的录入框正常显示,否则不显示,至此End If结束。此时应该为Form1.Hide,Form2,Show。对应第1个If语句。如果Form1.Hide,Form2.Show语句在两个End If的后面,则没有回车时,就隐藏了Form1,显示了Form2,所以B选项正确。

选择题
单项选择题