在名为 Form1 的窗体上建立一个名称为 Txt1 的文本框,其 MultiLine 属性为 True, ScrollBars 属性为 2;3 个名称分别为 Cmd1、Cmd2 和 Cmd3 的命令按钮,它们的标题分 别为“读数”、“计算”和“保存”。
要求程序运行后,如果单击“读数”按钮,则读入 dr2.dat 文件中的 100 个整数,放 入一个数组中(数组下界为 1),同时在文件框中显示出来;如果单击“计算”按钮,则 计算小于或等于 300 的所有数之和,并把结果在文本框 Txt1 中显示出来,如果单击“保 存”按钮,把该结果存入考生文件夹中的文件 dw1.dat 中(在考生文件夹下有标准模块 model.bas,其中的 writedata 过程可以把结果存入指定的文件,考生可以把该模块文件添 加到自己的工程中,直接调用此过程),如图 52-5 所示。
注意:文件必须放在考生文件夹中,窗体文件名为 vbsj5.frm,工程文件名为 vbsj5.vbp, 计算结果存入 dw1.dat 文件,否则没有成绩。
【审题分析】本题源程序已提供 Writedate 自定义过程,需编写"读数"、"计算"和"保存"命令的单击事件过程。程序设计思路:在"读数"按钮的单击事件过程中,用 Open 语句以 Input 方式打开数据文件 dr1.dat,通过 For 循环语句(初值为 1,终值为 100)将数据文件中的数据用 Input 语句依次读出并赋值给数组元素 arr(i),同时显示在文本框中,为使数据间保持一定间隔,每个数据后用 Space(5)加入 5 个空格;在"计算"按钮的 Click 事件过程中,利用 For 循环语句(循环变 i 的初值为 1,终值为 100)依次将数组 arr 中小于或等于 300 的元素的值显示在文本框中(条件表达式为:arr(i)<=300),并将其值累加到变Sum,循环结束后将结果显示在窗体上。在"保存"按钮的 Click 事件过程中,通过调用WriteData 过程将文本框中的值写入数据文件 dw1.dat。
【操作步骤】
步骤 1:新建一个"标准 EXE"工程,按下表在窗体中画出控件并设置其相关属性。
步骤 2:选择【工程】?【添加模块】命令,打开添加模块对话框,将考生文件夹下的model.bas 添加到当前工程中。
步骤 3:在代码编辑窗口编写以下事件过程。
参考代码:
Dim arr(1 To 100) As Integer
Private Sub Cmd1_Click()
Txt1.Text = ""
Open App.Path & "dr1.dat" For Input As #1
′ó?ò??ì3?????úμè????ê?ר?? http://club.topsage.com/forum-49-1.html ê??ˉ??àí
For i = 1 To 100
Input #1, arr(i)
Txt1.Text = Txt1.Text & arr(i) & Space(5)
Next
Close #1
End Sub
Private Sub Cmd2_Click()
Dim sum As Integer
For i = 1 To 100
If arr(i) <= 300 Then
sum = sum + arr(i)
End If
Next
Txt1.Text = sum
End Sub
Private Sub Cmd3_Click()
writedata "dw1.dat", Txt1.Text
End Sub
步骤 4:按要求将文件保存至考生文件夹中。