1. 在名称窗体为Form1,KeyPreview属性为True的窗体上有一个列表框(名称为List1)和一个文本框(名称为Text1),如图2—1所示。编写窗体的KeyDown事件过程。程序运行后,如果按“A”键,则从键盘上输入要添加到列表框中的项目(内

admin2009-03-17  23

问题 1. 在名称窗体为Form1,KeyPreview属性为True的窗体上有一个列表框(名称为List1)和一个文本框(名称为Text1),如图2—1所示。编写窗体的KeyDown事件过程。程序运行后,如果按“A”键,则从键盘上输入要添加到列表框中的项目(内容任意,不少于三个);如果按“D”键,则从键盘上输入要删除的项目,将其从列表框中删除。程序的运行情况如图2—2所示。
   在考生文件夹下有一个工程文件sjt3.vbp(相应的窗体文件名为sjt3.frm),可以实现上述功能。但这个程序不完整,请把它补充完整。
   要求:去掉程序中的注释符,把程序中的?改为适当的内容,使其正确运行,但不能修改程序中的其他部分。最后把修改后的文件按原文件名存盘。
   2.在考生文件夹下有一个工程文件sjt4.vbp,相应的窗体文件为sjt4.frm,在窗体上有一个命令按钮和一个文本框。程序运行后,单击命令按钮,即可计算出0~1000范围内不能被?整除的整数的个数,并在文本框中显示出来。在窗体的代码窗口中,已给出了部分程序,其中计算不能被7整除的整数的个数的操作在通用过程Fun中实现,请编写该过程的代码。
   要求:请勿改动程序中的任伺内容,只在Function Fun()和End Function之间填入你编写的若干语句。最后把修改后的文件按原文件名存盘。

选项

答案① 解析:判断按键可以在窗体的 KeyDown事件下用Chr函数将按键代码转换成字符与给定字符进行比较。 ② 使用AddItem方法向列表框中添加列表项目,使用RemoveItem方法从列表框中删除列表项目。程序中用到了InputBox(),其格式为: InputBox(prompt[, title][, default][, xpos][, ypos][, helpfile, context]) prompt:是一个字符串,其长度不得超过 1024个字符,它是在对话框内显示的信息,用来提示用户输入。 title:字符串,它是对话框的标题,显示在对话框顶部的标题区。 default:字符串,用来显示输入缓冲区的默认信息。 xpos,ypos:是两个整数值,分别用来确定对话框与屏幕左边的距离(xpos)和上边的距离(ypos),它们的单位为twip。 helpfile,context:helpfile是一个字符串变量或字符串表达式,用来表示帮助文件的名字;context是一个数值变量或表达式,用来表示相关帮助主题的帮助目录号。 ③ 解题步骤: 第一步:建立界面并设置控件属性。程序中用到的控件及其属性见表3。 表 3控 件 属 性 设置值 Form1 KeyPreview True Listbox Name List1 文本框 Name Text1 第二步:编写程序代码。 程序提供的代码: Private Sub Form_ KeyDown (KeyCode As Integer, Shift As Integer) If Chr(KeyCode)="A"Then Text1.Text=InputBox("请输入要添加的项目") ’ List1.AddItem ? End If If Chr(KeyCode)="D"Then Text1.Text=InputBox("请输入要删除的项目") ’ For i=0 To ? ’ If List1. List (i)=? Then ’ List1. RemoveItem ? End If Next i End If End Sub 参考代码: Private Sub Form_KeyDown (KeyCode As Integer, Shift As Integer) If Chr(KeyCode)="A" Then Text1. Text=InputBox("请输入要添加的项目") List1. AddItem Text1 End If If Chr(KeyCode)="D"Then Text1. Text=InputBox ("请输入要删除的项目") For i=0 To List1.ListCount—1 If List1. List (i) = Form1.Text1 Then List1. RemoveItem (i) End If Next i End If End Sub 第三步:调试并运行程序。 第四步:按题目要求存盘。 2.① 程序中用到的Mod是取模的运算符,如:N Mod 7=0则说明余数为0,N能被7整除,否则N不能被7整除;程序中的变量 num统计的不能被7整除的个数,当I Mod 70时,num则加1,表示当前有一个不可以被7整除的数;题目要求文本框里显示不能被 7整除的数的个数,而num保留的是要求的结果,所以赋给文本框的值是num(Text1.Text=num)。 ② 解题步骤: 第一步:编写程序代码。 程序提供的代码: Sub SaveData( ) Open App. Path & "\" & "outtxt.txt" For Output As #1 Print #1,Text1.Text Close #1 End Sub Function Fun() End Function Private Sub Command1_Cliek() d=Fun() SaveData End Sub 参考代码: Sub SaveData() Open App. Path & "\" & "outtxt. txt" For Output As #1 Print #1, Text1.Text Close #1 End Sub Function Fun() Dim i As Integer, hum As Integer For i=0 To 1000 If i Mod 70 Then num=num+1 End If Next i Text1. Text=num End Function Private Sub Command1_Click() d=Fun() SaveData End Sub 第二步:调试并运行程序。 第三步:按题目要求存盘。

解析
转载请注明原文地址:https://kaotiyun.com/show/9j1p777K
0

最新回复(0)