注册 登录
编程论坛 VB6论坛

关于保存OCX控件的值,麻烦路过的瞄一下

lvweiren 发布于 2013-08-22 09:29, 466 次点击
把控件的值写入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
6 回复
#2
风吹过b2013-08-22 09:53
没有 涉及到 INI 保存部分的代码。

INI 文件,应该放在一个变量或一个常量 里的。你仔细搜索一下看看。
#3
lvweiren2013-08-22 10:12
回复 2楼 风吹过b
模块里能加 SaveControlData 的自定义路径吗?
#4
风吹过b2013-08-22 11:37
你贴的代码里没有涉及到 定义 INI 文件的部分,所以你的问题无人能回答。
#5
lvweiren2013-08-22 14:14
回复 4楼 风吹过b
那你能做一个吗?我可以给RMB
#6
lvweiren2013-08-22 14:16
回复 4楼 风吹过b
我查过所有代码  都没有涉及到定义ini路径  所以我好蛋疼
#7
hjxlj2013-08-24 18:09
楼主,你得把代码发全了,光这样发那么点叫人任何分析?
1