“10!”、“11!”、“12!”,Index属性分别为0、1、2;画两个命令按钮,名称分别为Cmd1和Cmd2,标题分别为“计算”和“保存”;画一个名称为Text1的文本框。程序的功能是:在选定一个单选按钮并单击“计算”按钮后,可以计算出相应阶乘值,并在Text1中显示该值。单击“保存”按钮,则文本框中的数据可以保存到考生文件夹下的out5.txt文件夹中。注意窗体加载时,Cmd2按钮不可用,单击“计算”按钮后,Cmd2按钮变为可用。 三、综合应用题答案 【解析步骤】
(1)打开代码窗口,共有4处需要填写。 Private Sub Cmd1_Click() Cmd2.Enabled = True Dim i As Integer Dim t As Integer For i = 0 To 2
If Op1(i)= True Then
't = Val(Left$(Op1(i).Caption, ?)) 'Text1.Text = ?(t) End If Next i End Sub
Function Out(n As Integer) Dim i As Integer Dim t As Long t = 1
For i = 2 To n ' ? Next i Out = t End Function
Private Sub Cmd2_Click()
Open App.Path &\ Print #1, Text1.Text Close #1 End Sub
Private Sub Form_Load() 'Cmd2.Enabled =? End Sub
(2)研读Form_Load()事件处理程序,窗体加载时,Cmd2按钮不可用。通过此可知应使用语句:
Cmd2.Enabled = False
(3)研读Function Out(n As Integer)程序,For循环用来计算阶乘,所以应填写:t = t * i (4)研读Cmd1_Click()事件处理程序,If语句有两处需要改写: If Op1(i)= True Then
't = Val(Left$(Op1(i).Caption, ?)) 'Text1.Text = ?(t)
End If
该段程序功能是将选中的单选按钮标题上的数字取出来,即将其赋给变量t,然后调用函数Out计算t的阶乘,并显示在文本框中。即: t = Val(Left$(Op1(i).Caption, 2)) Text1.Text = Out(t)
(5)完整的程序如下: Private Sub Cmd1_Click() Cmd2.Enabled = True Dim i As Integer Dim t As Integer For i = 0 To 2
If Op1(i)= True Then
t = Val(Left$(Op1(i).Caption, 2)) Text1.Text = Out(t) End If Next i End Sub
Function Out(n As Integer) Dim i As Integer Dim t As Long t = 1
For i = 2 To n t = t * i Next i Out = t End Function
Private Sub Cmd2_Click()
Open App.Path &\ Print #1, Text1.Text Close #1 End Sub
Private Sub Form_Load() Cmd2.Enabled = False End Sub
(6)验证程序运行后,“保存”按钮是否为不可用状态。单击“计算”按钮后,是否变成可用状态。计算结果和文件out5.txt中的内容是否正确。假设选10!,则结果应为3628800。 (7)保存工程和窗体文件。 一、基本操作题
下面出现的“考生文件夹”均为c:\\wexam\\20060001。
请根据以下各小题的要求设计Visual Basic应用程序(包括界面和代码)。 1.在名称为Form1的窗体上画一个文本框,名称为Text1,字体设为“黑体”,文本框中的初始内容为“程序设计”;再画一个命令按钮,名称为C1,标题为“改变字体”。请编写适当的事件过程,使得在运行后,单击命令按钮,则把文本框中文字的字体改为“宋体”。程序中不得使用任何变量。
注意:保存时必须存放在考生文件夹下,工程文件名为kt1.vbp,窗体文件名为kt1.frm。 2.在名称为Form1的窗体上画一个图片框,名称为P1,高为1800,宽为1600,并放入文件名为pic1.bmp的图片。请编写适当的事件过程,使得在运行后,如果双击窗体,则图片框中的图片消失。程序中不得使用任何变量。
注意:保存时必须存放在考生文件夹下,工程文件名为kt2.vbp,窗体文件名为kt2.frm。 一、基本操作题答案 1.【解题步骤】
(1)建立界面并设置控件属性。程序中用到的控件及其属性见表4-37。 表4-37
控 件 属 性 设置值 文本框 Name Text1 Font 黑体 Text 程序设计 按钮 Name C1 Caption 改变字体
(2)编写程序代码。 参考代码: Option Explicit
Private Sub C1_Click() Text1.Font=\宋体\End Sub
Private Sub Form_Load() Text1.FontName=\黑体\End Sub
(3)调试并运行程序。 (4)按题目要求存盘。 2.【解题步骤】
(1)建立界面并设置控件属性。程序中用到的控件及其属性见表4-38。 表4-38
控 件 属 性 设置值 图片框 Name P1 Height 1800 Width 1600 Picture 装入P1.bmp
(2)编写代码。 参考代码: Option Explicit
Private Sub Form_DblClick() P1.Picture = LoadPicture() End Sub
(3)调试并运行程序。 (4)按题目要求存盘。
二、简单应用题
下面出现的“考生文件夹”均为c:\\wexam\\20060001。
1.在考生文件夹下有一个工程文件kt3.vbp,相应的窗体文件名为kt3.frm,请装入该文件,在窗体上画两个命令按钮,名称分别为Command1和Command2,标题分别为“添加项目”和“删除项目”;再画一个列表框和一个文本框,名称分别为List1和Text1。
编写适当的事件过程,使得程序运行时,如果单击“添加项目”命令按钮,则从键盘上输入要添加到列表框中的项目(内容任意,不少于三个);如果单击“删除项目”命令按钮,则从键盘上输入要删除的项目,将其从列表框中删除。本题提供的窗体文件可以实现上述功能,但这个程序不完整,请将其它补充完整。 要求:删除程序中的注释符(即“'”),把程序中的“?”改为适当的内容,使其正确运行,但不能修改程序中的其他部分。最后把修改后的文件按原文件名保存。 2.在考生文件夹下有一个工程文件kt4.vbp,要求程序运行后,如果多次单击列表框中的项,则可同时选择这些项,而如果单击“显示”按钮,则在窗体上输出所有选中的列表项。 要求:修改列表框的适当属性,使得运行时可以多选,并删除程序中的注释符(即“'”),把程序中的“?”改为正确的内容,使其实现上述功能,但不得修改程序中的其他部分。最后把修改后的程序按原文件名保存。 二、简单应用题答案 1.【解题步骤】
(1)建立界面并设置控件属性。程序中用到的控件及其属性见表4-39。 表4-39
控 件 属 性 设置值 Listbox Name List1 命令按钮 Name Command1 Caption 添加项目 续 表
控 件 属 性 设置值 命令按钮 Name Command2 Caption 删除项目 文本框 Name Text1
(2)编写程序代码,程序提供的代码如下: Private Sub Command1_Click() Text1.Text = InputBox(\请输入要添加的项目\ ?List1.AddItem ? End Sub
Private Sub Command2_Click() Text1.Text = InputBox(\请输入要删除的项目\ ?For I = 0 To ? ?If List1.List(i)= ? Then ?List1.RemoveItem ? End If Next I End Sub 参考代码:
Private Sub Command1_Click() Text1.Text = InputBox(“请输入要添加的项目\ 'List1.AddItem Text1.Text End Sub
Private Sub Command2_Click() Text1.Text = InputBox(“请输入要删除的项目") 'For I = 0 To List1.ListCount - 1 'If List1.List(i)= Text1.Text Then 'List1.RemoveItem I End If Next I End Sub
(3)调试并运行程序。 (4)按题目要求存盘。 2.【解题步骤】
(1)建立界面并设置控件属性。程序中用到的控件及其属性见表4-40。 表4-40
控 件 属 性 设置值 列表框 Name L1 MultiSelected 1 续 表
控 件 属 性 设置值 按钮 Name C1 Caption 显示
(2)编写程序代码。 程序提供的代码: Private Sub C1_Click() ?For I = ? To ? ?If L1.? = True Then Print L1.List(i) End If Next End Sub 参考代码:
Private Sub C1_Click() For I = 0 To L1.ListCount - 1 If L1.selected(i) = True Then Print L1.List(i) End If Next End Sub
(3)调试并运行程序。