网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Visual Basic
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.VB从零开始编外挂(四).
.为什么用VB开发数据库---VB数据库.
.打开文本文件各种方法.
.在Access数据库中实现admin888管.
.FLIC动画文件的播放程序设计.
.用Winsock控件实现文件的下载.
.VB中Winsock控制的UDP协议的使用.
.使用Objptr函数快速查找集合中的.
.MsComm文字传输.
.Unicode与Ansi.
.基于Windows95平台的VB5串行端口.
.利用API可以直接拨号.
.利用VB三维面板控件设计流动条.
.文件系统控件方案.
.把Outlook信箱中的附件另存为.
.巧用VB编程使XMPLAYER自动播放VCD.
.集合类:VBA集合对象的安全包装.
.转换长短文件名.
.用VB为软件增加注册功能.
.如何对字符串进行加密解密.

文件系统控件方案

发表日期:2006-2-27


    文件系统控件方案:文件搜索器
    应用程序因为用户常常希望快速查找应用程序的可用文件或文件组,所以,许多应用程序都提供查询文件系统的功能。Winseek.vbp示例应用程序协助用户浏览驱动器和目录并显示所有类型的文件。

    下表总结了WinSeek应用程序在Seek.frm窗体中使用的控件。
   
    注意文件系统控件没有caption属性,虽然可为它们加标签并指定访问键。关于这种使用标签的方法的详细信息,请参阅本章后面的“使用Label控件”一节。

    编写WinSeek应用程序的代码
    用鼠标单击驱动器列表框中的项目就会触发Change事件。当用户选定项目并接着改变窗体上的焦点时也将触发Change事件。在目录列表框中,需要DblClick事件生成Change事件。
    当用户不想用鼠标变更目录时,通常使用箭头键选定需要的目录,然后按ENTER键。
    因为ENTER键通常与缺省CommandButton控件关联,所以,WinSeek必须识别用户在何时只是想变更目录而不搜索文件。
通过判断dirList列表框的路径是否不同于当前突出显示的目录,WinSeek应用程序解决了这个问题。当用户单击目录列表框中的项目或用箭头键在目录列表框中移动时,可能发生这种情况。下列代码判断dirList.Path是否与突出显示的目录不同。若不同,则更新dirList.Path。若相同,则执行搜索操作。
    PrivateSubcmdSearch_Click()
      .
      .
      .
    '若dirList.Path与当前选定目录不同,
    '则执行更新操作;否则执行'搜索操作。
    IfdirList.Path<>dirList.List(dirList.ListIndex)Then
      dirList.Path=dirList.List(dirList.ListIndex)
      ExitSub
    EndIf
    '继续搜索。
      .
      .
      .
    EndSub
    WinSeek应用程序使用下述过程处理重要的事件:
    drvList_Change过程
    dirList_Change过程
    cmdSearch_Click过程

    DriveListBox控件的Change事件
    当用户单击驱动器列表框的项目时就会生成控件的Change事件。此时将调用drvList_Change事件过程并运行下述代码:    PrivateSubdrvList_Change()
       OnErrorGoToDriveHandler
       '若选定新驱动器,则Dir1列框'更新显示。
       dirList.Path=drvList.Drive
       ExitSub
    '若发生错误,则用dirList.Path重新设置drvList.Drive。
     DriveHandler:
       drvList.Drive=dirList.Path
       ExitSub
     EndSub
     注意,无论用鼠标单击还是移动选项(例如,利用箭头键移动),在选定新驱动器时都将在驱动器列表框中发生Change事件。试图访问未关闭驱动器门的软盘驱动器,或者选定一个无意中已切断连接的网络驱动器,诸如此类的操作都将触发错误处理程序。因为出错后不能按原先的安排赋值,所以dirList.Path仍包含先前的有效驱动器。将dirList.Path重新赋予drvList.Drive后就可更正这个错误。
    详细信息请参阅第十三章“调试代码和处理错误”。

    DirListBox控件的Change事件
    如果用户双击目录列表框中的项目或在代码中(如drvList_Change过程中)变更dirList的Path属性,就会启动dirList_Change事件。下列代码响应此事件:
    PrivateSubdirList_Change()
       '更新文件列表框,以便与目录列表框同步。
       filList.Path=dirList.Path
    EndSub
    此事件过程将dirList列表框的Path属性赋予filList列表框的Path属性。这将在filList列表框中触发重新绘制的PathChange事件;不必在filList_PathChange过程中添加代码,因为此应用程序中的事件在filList列表框结束。

    CommandButton控件的Click事件
    此事件过程判断dirList列表框中突出显示的项目是否和dirList.Path相同。若项目不同,则更新dirList.Path;否则执行搜索操作。
    PrivateSubcmdSearch_Click()
      .
      .
      .
      '若dirList.Path与当前选定的目录不同,
      '则更新;否则执行搜索。
      IfdirList.Path<>dirList.List_
      (dirList.ListIndex)Then
         dirList.Path=dirList.List(dirList.ListIndex)
         ExitSub
      EndIf
      '继续搜索。
      .
      .
      .
    EndSub
    注意可用附加功能增强WinSeek应用程序。例如会出现这样的情况,希望使用文件控件的属性。这时可通过使用复选框使用户设置文件属性的不同组合,以使文件列表框显示Hidden、System等等属性的文件。这将把搜索限制在满足条件的文件中。

->

上一篇:DataGrid控件的使用五 人气:3199
下一篇:文件系统控件的使用二 人气:3248
浏览全部Visual Basic的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐