关于保存OCX控件的值,麻烦路过的瞄一下
把控件的值写入INI 发现 ListIndex 的值不能被写入,适用于FORM的保存控件代码也不能在OCX里运行。但是OCX界面里有这么一段代码是可以保存所有控件的值,但是我不知道怎么把这个ini设置成自定义路径和名字
麻烦大神看一看了。。。
'以下是OCX界面代码
Public Sub OnSave()
ClearControlData '固定位置,不需要进行修改
'**************************************************************以下的内容,可以自己修改或者删除
SaveControlData xueliang.Name, xueliang.ListIndex
SaveControlData huicheng.Name, huicheng.ListIndex
SaveControlData ditu.Name, ditu.ListIndex
SaveControlData dixue.Name, dixue.ListIndex
SaveControlData siwang.Name, siwang.ListIndex
End Sub
'以下是模块
Option Explicit
Public ControlDataCollection As New Collection
Public Sub SaveControlData(ControlName As String, ControlValue As Variant)
If VarType(ControlValue) = vbBoolean Then
ControlValue = CInt(ControlValue)
End If
Dim TempControlData As ControlData
With TempControlData
.Name = ControlName
.Value = ControlValue
End With
ControlDataCollection.Add TempControlData, ControlName
End Sub
Public Function LoadControlData(ControlName As String) As String
LoadControlData = ControlDataCollection(ControlName).Value
End Function
Public Sub ClearControlData()
On Error Resume Next
Set ControlDataCollection = Nothing
Set ControlDataCollection = New Collection
End Sub