新建From1(窗体),新建Command1(按钮CommandButton),代码:
Private Sub Command1_Click()
Dim dict As Object
Set dict = CreateObject("Scripting.Dictionary")
For i = 1 To 10
dict.Add "key" & i, "value" & i
Next
For Each Key In dict.Keys
Debug.Print dict.Item(Key) & "=" & dict(Key)
Next Key
End Sub
运行结果:
value1=value1
value2=value2
value3=value3
value4=value4
value5=value5
value6=value6
value7=value7
value8=value8
value9=value9
value10=value10
在 VB6 的 Scripting.Dictionary 中,每个键(key)对应的值(item)只能是一个对象或者一个数据,而不能直接存放多个值。所以在一个字典中,一个键只能对应一个值。
如果您需要将一个键关联多个值,可以考虑以下两种方法:
使用集合(Collection):您可以将一个集合对象或数组作为字典中的值来存储多个值。例如,您可以将一个存放多个值的集合对象作为字典中的值,这样每个键对应的值就是一个集合,其中包含多个值。
使用字符串拼接:您可以将多个值拼接成一个字符串,并使用特定的分隔符将这些值区分开来,然后将这个字符串作为字典中的值。在需要时,您可以根据分隔符将这个字符串拆分回多个值。
在 VB 中调用 `CreateObject("Scripting.Dictionary")` 创建字典对象时,实际上是在调用 Windows 系统中的 COM 组件 `Scripting.Dictionary`。这个组件是由 Microsoft 开发并包含在 Windows 系统中的一些 DLL 文件中。
具体来说,`Scripting.Dictionary` COM 组件通常包含在 `scrrun.dll`(Scripting Runtime Library)这个动态链接库中。这个 DLL 包含了用于提供对脚本程序和编程框架的支持的组件,如文件系统对象、字典对象等。
这些 COM 组件通常是使用 C++ 等编程语言开发的,用于提供在不同编程语言之间进行交互和通信的功能。在这种情况下,`Scripting.Dictionary` 组件也是由 Microsoft 使用 C++ 等语言开发的。