vb文件系统控件方案

2016-02-19 17:15 3 1 收藏

图老师小编精心整理的vb文件系统控件方案希望大家喜欢,觉得好的亲们记得收藏起来哦!您的支持就是小编更新的动力~

【 tulaoshi.com - 编程语言 】

  文件系统控件方案:文件搜索器

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

  下表总结了 WinSeek 应用程序在Seek.frm 窗体中使用的控件。

  

  注意 文件系统控件没有 caption 属性,虽然可为它们加标签并指定访问键。关于这种使用标签的方法的详细信息,请参阅本章后面的使用Label 控件一节。

  编写 WinSeek 应用程序的代码

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  用鼠标单击驱动器列表框中的项目就会触发 Change 事件。当用户选定项目并接着改变窗体上的焦点时也将触发 Change 事件。在目录列表框中,需要 DblClick 事件生成 Change 事件。

  当用户不想用鼠标变更目录时,通常使用箭头键选定需要的目录,然后按ENTER 键。

  因为 ENTER 键通常与缺省 CommandButton 控件关联,所以,WinSeek 必须识别用户在何时只是想变更目录而不搜索文件。

  通过判断 dirList 列表框的路径是否不同于当前突出显示的目录,WinSeek应用程序解决了这个问题。当用户单击目录列表框中的项目或用箭头键在目录列表框中移动时,可能发生这种情况。下列代码判断 dirList.Path 是否与突出显示的目录不同。若不同,则更新 dirList.Path。若相同,则执行搜索操作。

  

Private Sub cmdSearch_Click()    .    .    .'若 dirList.Path 与当前选定目录不同,'则执行更新操作;否则执行'搜索操作。If dirList.Path  dirList.List(dirList.ListIndex) Then    dirList.Path = dirList.List(dirList.ListIndex)    Exit SubEnd If'继续搜索。    .    .    .End Sub

  WinSeek 应用程序使用下述过程处理重要的事件:

  drvList_Change 过程

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

  dirList_Change 过程

  cmdSearch_Click 过程

  DriveListBox 控件的 Change 事件

  当用户单击驱动器列表框的项目时就会生成控件的 Change 事件。此时将调用 drvList_Change 事件过程并运行下述代码:Private Sub

drvList_Change ()     On Error GoTo DriveHandler     '若选定新驱动器,则 Dir1 列框'更新显示 。     dirList.Path = drvList.Drive     Exit Sub

  '若发生错误,则用 dirList.Path 重新设置 drvList.Drive。

  

 DriveHandler:     drvList.Drive = dirList.Path     Exit Sub   End Sub

  注意,无论用鼠标单击还是移动选项(例如,利用箭头键移动),在选定新驱动器时都将在驱动器列表框中发生 Change 事件。试图访问未关闭驱动器门的软盘驱动器,或者选定一个无意中已切断连接的网络驱动器,诸如此类的操作都将触发错误处理程序。因为出错后不能按原先的安排赋值,所以 dirList.Path 仍包含先前的有效驱动器。将 dirList.Path 重新赋予drvList.Drive 后就可更正这个错误。

  详细信息 请参阅第十三章调试代码和处理错误。

  DirListBox 控件的 Change 事件

  如果用户双击目录列表框中的项目或在代码中(如 drvList_Change 过程中)变更dirList 的 Path 属性,就会启动 dirList_Change 事件。下列代码响应此事件:

  Private Sub dirList_Change ()

  '更新文件列表框,以便与目录列表框同步。

  filList.Path = dirList.Path

  End Sub

  此事件过程将 dirList 列表框的 Path 属性赋予 filList 列表框的 Path 属性。这将在 filList 列表框中触发重新绘制的 PathChange 事件;不必在filList_PathChange 过程中添加代码,因为此应用程序中的事件在 filList 列表框结束。

  CommandButton 控件的 Click 事件

  此事件过程判断 dirList 列表框中突出显示的项目是否和 dirList.Path 相同。若项目不同,则更新 dirList.Path;否则执行搜索操作。

  

Private Sub cmdSearch_Click ()  .  .  .  '若 dirList.Path 与当前选定的目录不同,  '则更新;否则执行搜索。  If dirList.Path  dirList.List _  (dirList.ListIndex) Then dirList.Path = dirList.List(dirList.ListIndex) Exit Sub  End If  '继续搜索。  .  .  .End Sub

  注意 可用附加功能增强 WinSeek 应用程序。例如会出现这样的情况,希望使用文件控件的属性。这时可通过使用复选框使用户设置文件属性的不同组合,以使文件列表框显示 Hidden、System 等等属性的文件。这将把搜索限制在满足条件的文件中。

来源:https://www.tulaoshi.com/n/20160219/1614699.html

延伸阅读
前面介绍的缓冲文件系统是借助文件结构体指针来对文件进行治理,通过文件指针来对 文件进行访问,既可以读写字符、字符串、格式化数据,也可以读写二进制数据。非缓冲文 件系统依靠于操作系统,通过操作系统的功能对文件进行读写,是系统级的输入输出,它不 设文件结构体指针,只能读写二进制文件,但效率高、速度快,由于A N...
标签: 电脑入门
计算机系统中的文件千千万万,如果没有进行分类的话就会变得杂乱无章,使用起来也十分不方便,而文件系统就能很好的分类存放各类文件,下面图老师小编就给大家详细介绍下Linux文件系统,一起来学习下吧。 对于计算机来说,所谓的数据就是0和1的序列。这样的一个序列可以存储在内存中,但内存中的数据会随着关机而消失。为了将数据长久保存,我...
虚拟文件系统蓝森林 http://www.lslnet.com 2001年5月20日 21:16作 者: difeijingRichard Gooch 23-APR-1999翻译:difeijing 本文档中的惯例用法 ==================文档中的每一节标题的右边都有一个字符串" "。每个小节都会有个" "在右边。这些字符串是为了在文档中查询更容易而设的。注意:本文档的最新更新可在下...
标签: 服务器
Linux文件系统基本结构   Linux的文件系统结构 Linux文件系统为一个倒转的单根树状结构 文件系统的根为"/" 文件系统严格区分大小写 路径使用/来分割,在windows使用"" 当前工作目录 1 每一个shell或系统进程都有一个当前工作目录 2 使用pwd命令可以显示当前的工作目录 ...
    简介 ReiserFS文件系统是一种新的linux文件系统。它通过一种与众不同的方式--完全平衡树结构来容纳数据, 包括文件数据,文件名以及日志支持,并能在上面继续保持很快的搜索速度和很高的效率。ReiserFS文件系统一直以来被用在高端Unix系统上如,SGI。 ReiserFS是在Hans Reiser和其领导下的开发小组下开发和发展,SuSE ...

经验教程

770

收藏

59
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部