编程教程
您现在的位置: 中国个人站长站 >> 网络编程 >> Visual Basic >> 教程正文 深入Scripting Runtime Library 之二
推荐位

深入Scripting Runtime Library 之二

中国个人站长站 Visual Basic 点击数: 更新时间:2005-8-29 10:27:02

深入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方法就可以删除
一个项目。

教程录入:swh    责任编辑:swh 
个人站长站与你风雨同舟!
本站所提供的资源均来源于互联网,如有侵权行为,请与本站管理员联系,我们会第一时间删除!
·如果您发现《深入Scripting Runtime Library 之二》文章有错误,也请通知我们修改!
联系邮箱chinageren#126.com,谢谢支持!
站内搜索:
广告服务 | 友情链接 | 联系我们 | 免责声明 | 用户留言 | 网站导航
版权所有:中国个人站长站 2007-2008 未经授权禁止复制或建立镜像 客服QQ号:112731235
copyright © 2007-2008 www.ChinaGeRen.com online services. all rights reserved. 苏ICP备05000059号