庞大资源库的计算机教程网站!
设为首页
加入收藏
总编信箱
投稿或申请专栏请先 [登 陆]
首页 操作系统 程序设计 图形图像 媒体动画 机械电子 WEB开发 数 据 库 办公系列 路由技术 网络原理 网络应用
认证考试 安全技术
首页>程序设计>VB专区>基础教程>正文
资料搜索
Google搜索
Google
返回上级列表

推荐文章

快速保存网页中所有图片的方法
Windows中让光驱巧妙“隐身”技
防范非法用户入侵Win 2000/XP系
两款比较典型的ASP木马防范方法
有关表格边框的css语法整理
Windows XP中可以被禁用的服务
SQL Server导出导入数据方法
Javascript所有对象的属性的获
网页(HTML)中的特殊字符
与篮球共舞,尽显模式本色
QQ病毒的手工清除方法
Photoshop为极品美女打造性感睫
天衣无缝:IIS与PHP水火也相容
SQL Server存储过程编写和优化

文件系统控件方案

 作者:本站收集   日期:2005-8-4 11:16:38
字号选择〖 〗/ 双击滚屏 单击停止   

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

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

    编写 WinSeek 应用程序的代码
    用鼠标单击驱动器列表框中的项目就会触发 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 Sub
    End If
    '继续搜索。
      .
      .
      .
    End Sub
    WinSeek 应用程序使用下述过程处理重要的事件:
    drvList_Change 过程
    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 等等属性的文件。这将把搜索限制在满足条件的文件中。

上一篇:Frame 控件的使用    下一篇:文件系统控件的使用 二  
[发送给好友]  [关闭窗口]  [返回顶部]   转载请注明来源:www.it00.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
责任编辑: 原点 投稿作者: 本站收集
信息来源: 网络 录入时间: 2005-8-4 11:16:38
关于我们 - 广告服务 - 版权申明 - 网站地图 - 联系方式 - 总编信箱 - 会员投稿