在考生文件夹下有一个工程文件sjt3.vbp(相应的窗体文件名为sjt3.frm),在窗体上添加一个名称为List1的列表框和一个名称为Text1的文本框,如图1所示。编写窗体的MouseDown事件过程。程序运行后,如果用鼠标单击窗体,则从键盘上输入要添加到列表框中的项目(内容任意,不少于三个);如果用鼠标右键单击窗体,则从键盘上输入要删除的项目,将其从列表框中删除。程序的运行情况如图2所示。这个程序不完整,请把它补充完整,并能正确运行。
【正确答案】【操作步骤】
步骤1:打开本题工程文件,按下表所列在窗体画出控件并设置其属性。
控件
|
列表框
|
文本框
|
属性
|
Name
|
Name
|
设置值
|
List1
|
Text1
|
步骤2:打开代码编辑窗口,去掉程序中的注释符“'”,将问号改为正确的内容。
参考答案(字体加粗部分是需考生填入的内容)
Private Sub Form_MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Single)
If Button=1 Tnen
Text1.Text=InputBox ("请输入要添加的项目")
List1. AddItem
Text1.Text '将Text1中的内容加入列表
End If
If Button=2 Then
Text1.Text=InputBox("请输入要删除的项目")
'列表总数用ListCount求得
For i =0 To
List1.ListCount-1
'判断列表项是否为要删除的项
If List1.List(i) =
Text1.Text Then
'删除i所对应的项
List1. RemoveItem
i
End If
Next i
End If
End Sub
程序结束
步骤3:调试并运行程序,关闭程序后按题目要求存盘。
【易错提示】列表数组List(i)下标从0开始,列表项的循环上限应为ListCount-1,要注意InputBox语句的格式。
【答案解析】[考点] 本题考点有:列表框的Name、List和ListCount属性,文本框的Name和Text属性,Removeltem方法,InputBox函数,For循环语句以及If判断语句。
当在窗体上按下鼠标键时将触发其MouseDown事件,该事件过程的参数Button值为1时表示当前按下的是鼠标左键;当Button值为2时表示当前按下的是鼠标右键。向列表框添加项目使用AddItem方法,删除列表项使用RemoveItem方法。当执行删除操作时,本题在For循环语句中逐一判断列表中各项是否与输入内容一致,若一致则删除列表框中该项。
程序中用到了InputBox()函数,其格式为:
InputBox(prompt[,title][,default][,xpos][,ypos][,helpfile,context])
其中常用参数为prompt和title。prompt是一个字符串,其长度不得超过1024个字符,它是在对话框内显示的信息,用来提示用户输入。
title:是一个字符串,它是对话框的标题,显示在对话框顶部的标题区。