VB代码分析

来源:百度知道 编辑:UC知道 时间:2024/05/31 19:37:38
Dim Num

Private Sub Form_Load()
If Num = "" Then
Open App.Path & "\whatsnew.txt" For Input As #1
Num = StrConv(InputB(LOF(1), #1), vbUnicode)
Close #1
Else
On Error Resume Next
Num = GetSetting("VB", "Save", "Text")
End If
Text1.Text = Num
End Sub

Private Sub Form_Unload(Cancel As Integer)
Num = Text1.Text
SaveSetting "VB", "Save", "Text", Num
End Sub

为什么当Num不论是什么时,text1.text只显示App.Path & "\whatsnew.txt中的内容,if语句不起作用?
怎么修改

好的,追加分数!
当Num为空时,获取App.Path & "\whatsnew.txt中的内容,当Num不为空时,获取注册表里的内容
===================
我想通了!
Num = GetSetting("VB", "Save", "Text")这句话是在Else下面。不获取注册表值,Num当然是空的,也就只能执行 Num = StrConv(InputB(LOF(1), #1), vbUnicode)了!

你的代码什么情况下 NUM 都是 读取的是 App.Path & "\whatsnew.txt中的内容

看你 要修改 什么样的。

你只定义了NUM,判断之前都没改NUM的值,所以NUM一直是刚定义好的状态,所以NUM都是读取的是 App.Path & "\whatsnew.txt中的内容

你每次运行程序都会重新定义NUM导致NUM再次清空。。。

App.Path & "\whatsnew.txt