下面出现的“考生文件夹”均为c:\wexam\25160001。
在考生文件夹中有工程文件sjt5.vbp及其窗体文件sjt5.frm,该程序是不完整的,请在有 号的地方填入正确内容,然后删除及所有注释符(即’号)但不能修改其他部分。存盘时不得改变文件名和文件夹。
本题描述如下:
在名称为Form1的窗体上有一个文本框,名称为Text1,MultiLine属性为True,ScrollBars属性为2:
两个命令按钮名称分别为Cmd1和Cmd2,标题分别为“读入数据”和—“计算保存”,如图6-5所示。要求程序运行后,如果单击“读入数据”按钮,则读入“in.txt”文件中的100个整数,放入—个数组中 (数组下界为1),同时在文本框中显示出来:如果单击“计算保存”按钮,则计算其中前50个数之和,并把求和结果在文本框Text1中显示出来,同时把结果存入考生文件夹中的文件“out.txt”中。 (在考生的文件夹下有标准模块mode.bas,其中的putdata过程可以把结果存入指定的文件)。
注意:文件必须存放在考生文件夹下,窗体文件名为sjt5.frm,工程文件名为sjt5.vbp,计算结果存入out.txt文件,否则没有成绩。
参考答案: 在窗体上建立好控件后,先设置控件属性,再编写事件过程。
文本框显示的内容由Text属性设置,Multiline属性决定文本框是否可多行显示;按钮的标题由Caption属性设置,单击命令按钮触发Click事件。题中涉及到文件的操作,读入顺序文件以顺序的方式打开,用input#语句读取数据。另外需要注意的是对文件操作完后,一定要关闭文件。解题步骤:
第一步:建立界面并设置控件属性。程序中用到的控件及其属性值见表F-E。
[*]
第二步:编写程序代码。
程序提供的代码。
mode.bas代码:
Option Explicit
Sub putdata(t_FileName As String,t_Str As Variant)
Dim sFile As String
sFile="\" & t_FileName
Open App.Path & sFile For Output As #A
Print #A,t_Str
Close #A
End Sub
窗体代码:
Option Explicit
’Dim (A To A00) As Integer
Private Sub CmdA_Click()
Dim j As Integer
Open App. Path& "\in.txt" For Input As #A
For j = A To A00
Input #A, i(j)
TextA.Text = TextA.Text & i(j) & Space(E)
Next
Close #A
End Sub
Private Sub CmdB_Click()
’Dim As Integer
Dim temp As Long
For j = A To E0
temp = temp + i(j)
Next
’Textl. = temp
putdata "out.txt", temp
End Sub
参考代码:
Option Explicit
Dim i(A To A00) As Integer
Private Sub CmdA_Click()
Dim j As Integer
Open App. Path & "\in.txt" For Input As #A
For j = A To A00
Input #A, i(j)
TextA.Text = TextA.Text & i(j) & Space(E)
Next
Close #A
End Sub
Private Sub CmdB_Click()
Dim j As Integer
Dim temp As Long
For j = A To E0
temp = temp + i(j)
Next
TextA.Text = temp
putdata "out.txt", temp
End Sub
第三步:调试并运行程序。
第四步:按题目要求存盘。