[填空题] 有如图7所示的窗体。程序执行时先在Text1文本框中输入编号,当焦点试图离开Text1时,程序检查编号的合法性,若编号合法,则焦点可以离开Text1文本框;否则,显示相应错误信息,并自动选中错误的字符,且焦点不能离开Text1文本框(见图7)。
合法编号的组成是:前两个字符是大写英文字母,第三个字符是“-”,后面是数字字符(至少一个)。下面程序可实现此功能,请填空。
Private Sub Text1_LostFocus()
Dim k%, n%
n=Len( (13) )
For k=1 To IIF(n>3,n,4)
c=Mid(Text1.Text,k,1)
Select Case k
Case 1,2
If c<"A" Or c>"Z" Then
MsgBox("第" & k & "个字母必须是大写字母!")
SetPosition k
Exit For
End If
Case 3
If c<>"-" Then
MsgBox("第" & k & "个字符必须是字符""-""")
SetPosition k
End If
Case Else
If c<"0" Or c>"9" Then
MsgBox("
正确答案:(13)Text1.Text (14)1 (15)SetFocus
参考解析:根据题中代码,第一个空所在行要获得文本框中文本的长度,所以第一个空填写Text1.Text;而SetPosition过程用于设置文本框的相关属性,SelStart表示选中文本的起始位置,返回的是选中文本的第一个字符的位置,SelLength表示选中文本的长度,返回的是选中文本的字符串个数,本题需要逐个检查编号的合法性,所以第二个空填写1;第三个空所在行用于保证编号不合法时焦点不能离开Text1文本框,所以第三个空填写SetFocus。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)