VB 用random方式读取dat文件,并在窗体上显示 ,显示内容不全
标准模块TyperecordnameAsString*10unitAsString*15ageAsIntegersalaryAsSingleEndType窗体模块Dima...
标准模块
Type record
name As String * 10
unit As String * 15
age As Integer
salary As Single
End Type
窗体模块
Dim a As record(声明中)
Private Sub Form_Click()
Open "f:\abc.dat" For Random As #1 Len = Len(a)
a.name = InputBox("姓名")
a.unit = InputBox("职位")
a.age = InputBox("年龄")
a.salary = InputBox("工资")
Put #1, , a
Get #1, 1, a
Print a.name, a.unit, a.age, a.salary
End Sub
在窗体上显示的信息没有a.salary 展开
Type record
name As String * 10
unit As String * 15
age As Integer
salary As Single
End Type
窗体模块
Dim a As record(声明中)
Private Sub Form_Click()
Open "f:\abc.dat" For Random As #1 Len = Len(a)
a.name = InputBox("姓名")
a.unit = InputBox("职位")
a.age = InputBox("年龄")
a.salary = InputBox("工资")
Put #1, , a
Get #1, 1, a
Print a.name, a.unit, a.age, a.salary
End Sub
在窗体上显示的信息没有a.salary 展开
1个回答
2014-10-29 · 知道合伙人软件行家
yfcp
知道合伙人软件行家
向TA提问 私信TA
知道合伙人软件行家
采纳数:1748
获赞数:5545
有多年网站建设相关工作经验。熟悉ASP、ASP.net、VB、JavaScript、HTML等语言和CSS、Ajax等相关技术。
向TA提问 私信TA
关注
展开全部
你好,你的代码我测试了一下,没有太大的问题。
不显示a.salary,可能是你在弹出的工资框里面没有输入。
a.age = Val(InputBox("年龄"))
a.salary = Val(InputBox("工资"))
上面2行加个 VAL(),把输入的转为数字
Private Sub Form_Click()
'On Error Resume Next
Open "f:\abc.dat" For Random As #1 Len = Len(a)
a.name = InputBox("姓名")
a.unit = InputBox("职位")
a.age = Val(InputBox("年龄"))
a.salary = Val(InputBox("工资"))
Put #1, , a
Get #1, 1, a
Print a.name, a.unit, a.age, a.salary
End Sub
更多追问追答
追问
谢谢哈,我也试了一下,但是当窗体不是最大化的时候,执行代码,就出现我的那种情况,再将窗体最大化,则没有a.salary ,如果窗体最大化,则什么问题都没有了,怎么解决?
追答
这个和窗体最大化最小化没关系的。我测试了一下,最大最小化都可以正常print。
最后加个 Close #1。关闭打开的文件。工程文件我打包了,下载试试
Private Sub Form_Click()
'On Error Resume Next
Open "f:\abc.dat" For Random As #1 Len = Len(a)
a.name = InputBox("姓名")
a.unit = InputBox("职位")
a.age = Val(InputBox("年龄"))
a.salary = Val(InputBox("工资"))
Put #1, , a
Get #1, 1, a
Print a.name, a.unit, a.age, a.salary
Close #1
End Sub
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询