(1)在学生文件夹下有一个工程文件sjl3.vbp(相应的窗体文件名为sjt3.frm),在窗体上添加一个名称为List1的列表框和一个名称为Text1的文本框,如图1所示。编写窗体的MouseDown事件过程。程序运行后,如果用鼠标单击窗体,则从键盘上输

admin2018-06-29  29

问题 (1)在学生文件夹下有一个工程文件sjl3.vbp(相应的窗体文件名为sjt3.frm),在窗体上添加一个名称为List1的列表框和一个名称为Text1的文本框,如图1所示。编写窗体的MouseDown事件过程。程序运行后,如果用鼠标单击窗体,则从键盘上输入要添加到列表框中的项目(内容任意,不少于三个);如果用鼠标右键单击窗体,则从键盘上输入要删除的项目,将其从列表框中删除。程序的运行情况如图2所示。这个程序不完整,请把它补充完整,并能正确运行。
    要求:去掉程序中的注释符,把程序中的?改为适当的内容,使其正确运行,但不能修改程序中的其他部分。最后将修改后的文件按原文件名存盘。

    (2)在考生文件夹下有一个工程文件sjt4.vbp(相应的窗体文件名为sjt4.frm),其功能是通过调用过程FindMin求数组的最小值。程序运行后,在4个文本框中各输入一个整数,然后单击命令按钮,即可求出数组的最小值,并住窗体上显示出来(如图所示)。
    要求:去掉程序中的注释符,把程序中的?改为正确的内容,使其实现上述功能,们不能修改程序中的其他部分。最后把修改后的文件按原文件名存盘。

选项

答案(1)步骤1:打开本题工程文件,按表3.18所列在窗体画出控件并设置其属性。 [*] 步骤2:打开代码编辑窗口,去掉程序中的注释符“’”,将问号改为正确的内容。 参考答案 Private Sub Form_MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Sinqle) If Button=1 Then 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.Removeltem i EndIf Next i EndIf End Sub 程序结束 步骤3:调试并运行程序,关闭程序后按题目要求存盘。 (2)步骤1:打开本题工程文件。 步骤2:打开代码编辑窗口,去掉程序中的注释符“’”,将问号改为正确的内容。 参考答案 Option Base 1 Private Function FindMin(a()As Integer) Dim Start As Integer Dim Finish As Integer,i As Integer Start=LBound(a)’求数组下界值 Fini sh=UBound(a)’求数组上界值 Min=a(Start)’将第一个数赋给最小值进行比较 For i=Start To Finish’循环判断找最小值 If a(i)
解析 (1)当在窗体上按下鼠标键时将触发其MouseDown事件,该事件过程的参数Button值为1时表示当前按下的是鼠标左键;当Button值为2时表示当前按下的是鼠标右键。向列表框添加项目使用Addhem方法,删除列表项使用RemoveItem方法。当执行删除操作时,本题在For循环语句中逐一判断列表中各项是否与输入内容一致,若一致则删除列表框中该项。
    程序中用到了InputBox()函数,其格式为:
    InputBox(prompt[,title][,default][,xpos][,ypos][,helpfile,context])
    其中常用参数为prompt和title。prompt是一个字符串,其长度不得超过1024个字符,它是在对话框内显示的信息,用来提示用户输入。
    title:是一个字符串,它是对话框的标题,显示在对话框顶部的标题区。
    (2)文本框里的内容(包括数字)默认都是当做字符串来处理的,如果需要参与数据运算,则需先用Val()函数将其转化为数字(例如Val(Text1.Text))。CInt函数将数值转换为整型。
    这里需要指出的是,利用Array对数组各元素赋值,声明数组的类型只能是Variant。
    在本题的FindMin过程中,用变量Min记录最小值,最初把数组的第一个元素的值赋给Min,然后通过For循环语句将其后的元素依次与之比较,如果小于Min的值则与之交换,依次类推,最终Min的值就是数组各元素中的最小值。
    在窗体上打印信息可以通过Print方法来实现,其形式为:
    [对象.]Print要显示的内容
转载请注明原文地址:https://kaotiyun.com/show/sOGp777K
0

最新回复(0)