深入Scripting Runtime Library 之二

王朝vb·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

深入Scripting Runtime Library 之二

www.applevb.com

上一次我向大家介绍了利用Scripting Runtime Library获取驱动器信息、对文件夹以及文件进行操作的

方法,这里介绍的是Scripting Runtime Library一个不起眼但是比较有用的对象——Dictionary对象

如果在VB中要实现象字典一样一一对应的列表并实现查询,例如实现学生学号同学生姓名一一对应,输入

学号就可以得到学生姓名这样的程序。你会使用什么什么方法呢?一般的方法是建立两个列表,分别在两个列

表中输入学生姓名和学号,在查询时首先查询学号列表中相符合的学号,然后在学生姓名列表中调出相应的学

生姓名。但是这样做编程的量增大,而且不便于维护。还有的读者可能想到了使用数据库,但是这样做显得有

一些“杀鸡用牛刀”,而且调用数据库对于程序的尺寸和运行速度有很大影响。这里我要象大家介绍的是利用

Scripting Runtime Library中的Dictionary对象实现字典功能。

下面首先通过程序来介绍Dictionary对象的使用

首先建立一个新的工程文件,在Form1中加入一个ListBox控件,一个TextBox控件,然后在Form1的代码窗口

中加入以下代码:

Dim dicTemp As New Scripting.Dictionary

Private Sub Form_Load()

List1.AddItem "apple"

List1.AddItem "banana"

List1.AddItem "grape"

List1.AddItem "orange"

List1.AddItem "strawberry"

dicTemp.Add "apple", "苹果"

dicTemp.Add "orange", "柑橘"

dicTemp.Add "banana", "香蕉"

dicTemp.Add "grape", "葡萄"

dicTemp.Add "strawberry", "草莓"

Text1.Text = ""

End Sub

Private Sub Form_Unload(Cancel As Integer)

dicTemp.RemoveAll

Set dicTemp = Nothing

End Sub

Private Sub List1_Click()

Dim astr As String

astr = List1.List(List1.ListIndex)

Text1.Text = dicTemp.Item(astr)

End Sub

Private Sub List1_DblClick()

Dim astr As String

Text1.Text = ""

astr = List1.List(List1.ListIndex)

List1.RemoveItem (List1.ListIndex)

dicTemp.Remove (astr)

End Sub

运行程序,点击List1中的项目,相对应的中文解释就会出现在Text1中间。

上面的程序十分简单,但是这个字典对象具有很多优点:

首先这是一个对象,这就使得程序的可读性和可维护性变的十分好。同时它的操作也十分简单,利用AddItem方法

就可以增加一个具有关键字的项目,利用Item属性就可以返回一个关键字相对应的项目,利用Remove方法就可以删除

一个项目。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航