作者: 伍学慧
推荐控件下载:_blank>NEWEX.OCX
简介:
Windows资源管理器大家都不陌生,用它你可以做出与Windows几乎一模一样的资源管理器,非常实用。
使用实例:
Windows中的资源管理器想必大家都经常使用,利用NEWEX 这个优秀的第三方控件,我们可以用VB轻易做出与Windows几乎一模一样的资源管理器。下面通过一个例子向大家介绍该控件的简单用法。
(一) 加载控件
启动Visual Basic 6.0,创建一个工程并保存为"工程1.vbp",同时产生一个名为"Form1"的窗口。在工具箱的空白处单击鼠标右键,从弹出的快捷菜单中启动"部件"窗口,点击"浏览"按钮,从存放NEWEX控件的文件夹中找到newex.ocx文件。点击"应用"后NEWEX控件就添加到工具箱中。你会发现工具箱中多了3个图标,如图1。我们要用到的是最后两个。
图1
(二) 主要属性介绍
本例中我们用到的是ExplorerTree(树型目录窗格)和ExplorerLis(列表窗格,用以显示左边选定对象所包含的内容)。下面列出它们的几个主要属性。
ExplorerTree的主要属性
Appearance
控件外观是否立体,1为3D边框,0为平面。
BorderStyle
控件的边界类型
Backcolor
背景色
BrowseFrom
转到地址栏输入的目录路径
TreeHasButtons
在树状目录中是否显示+按钮
TreeHasLines
在树状目录中是否显示关联虚线
Path
地址路径
ExplorerList的主要属性
Appearance
控件边框是否立体,1为3D边框,0为平面。
BorderStyle
控件的边界类型
ShowHiddenFile
是否显示隐藏文件
view
查看方式0 -平铺,1-图标,2-列表,3-详细信息
FileName
选中文件的文件名
(三) 添加控件,完成界面的设置
在Form1中添加一个ExplorerTree和一个ExplorerLis控件,调整好位置大小。再在窗体中添加3个 Text控件和一个CommandButton控件,将Text控件的Caption属性依次设置为"地址","文件","文件夹"。CommandButton控件的Caption属性设置为"转到"。如图2所示。
图2
(四)添加代码,实现基本功能
利用NEWEX控件的属性,我们可以添加一些代码来完善它的功能。
①添加以下代码,使右边列表窗格显示左边树型目录窗格选定对象所包含的内容。
Private Sub ExplorerTree1_TreeDataChanged()
On Error Resume Next
ExplorerList1.TreeDatas = ExplorerTree1.TreeDatas
End Sub
Private Sub ExplorerList1_FolderClick()
ExplorerTree1.FolderClick (ExplorerList1.filename)
End Sub
②利用ExplorerTree的OnDirChanged 方法和Path属性,让Text1文本框显示目录的地址路径。
Private Sub ExplorerTree1_OnDirChanged()
Text1.Text = ExplorerTree1.Path
End Sub
③利用ExplorerList的GetFileName 方法和filename属性,让Text2文本框显示在ExplorerList窗格中选定的文件。
Private Sub ExplorerList1_GetFileName()
Text2.Text = ExplorerList1.filename
End Sub
④编写代码完成"转到"按钮的功能。当点击"转到"按钮时,让ExplorerTree树型目录窗格转到"地址"栏中输入的地址目录。
Private Sub Command1_Click()
ExplorerTree1.BrowseFrom = Text1.Text
End Sub
(五)模仿Windows右键的查看菜单。
在Windows资源管理器中点击鼠标右键选"查看"可以选择查看文件的方式,而利用ExplorerList的View属性也可以模仿出这个功能。
首先,我们要先设计一个弹出菜单。选择"工具" 下的"菜单编辑器"进行菜单的设计.
如图3。
图3
菜单的具体设计如下表:
菜单标题信息
菜单名称
是否可见
级别
弹出菜单
popmnu
否
1
查看
mnuView
可见
2
平铺
mnuS
可见
3
图标
mnuN
可见
3
列表
mnuL
可见
3
详细信息
mnuD
可见
3
其次,设计好菜单后,添加以下代码实现点击鼠标右键弹出菜单。
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = vbRightButton Then
PopupMenu popmnu
End If
End Sub
最后,编码以响应菜单事件
Private Sub mnuD_Click()
ExplorerList1.View = 3 '详细信息
End Sub
Private Sub mnuL_Click()
ExplorerList1.View = 2 '列表
End Sub
Private Sub mnuN_Click()
ExplorerList1.View = 1 '图标
End Sub
Private Sub mnuS_Click()
ExplorerList1.View = 0 '平铺
End Sub
出处: 天极网