我已经在Visual Basic 6.0中制作(设计)了一个程序,它包含大约100个复选框,该程序不需要任何代码,只是一个yes / no复选框类型的程序,但是我想保存复选框状态,因此如果复选框处于“是”状态,则在重新启动程序后,其状态将保持不变。 我已经读过 My.Settings.Save,但我不知道如何使用它,我正在使用Visual Basic 6.0。
答案 0 :(得分:0)
在注册表中创建键,将每个复选框的值保存在其“更改事件”复选框中,并以“初始化事件代码”的形式加载它们的状态。
Option Explicit
Private Const MyApp As String = "My Own App" 'put here your application name
Private Const Sett As String = "Settings"
Private Sub CheckBox1_Change()
Dim chkBoxStatus As String
chkBoxStatus = "CheckBox1"
If Me.CheckBox1.value = True Then
SaveSetting MyApp, Sett, chkBoxStatus, CStr(True)
Else
SaveSetting MyApp, Sett, chkBoxStatus, CStr(False)
End If
End Sub
对所有复选框执行相同的操作。 然后:
Private Sub UserForm_Initialize() 'I do not remember well if VB6 uses Form_Initialize... You must adapt it accordingly.
Dim regValue As String
regValue = GetSetting(MyApp, Sett, "CheckBox1", "No value")
If regValue <> "No value" Then Me.CheckBox1.value = CBool(regValue)
'do the same for all checkboxes in discussion
'.
'.
End Sub
如果尚未在注册表中设置任何值,则返回 "No value"
...