![]() ![]() |
|||||||||||||||||||||||||||||||
VB考试教程:文件处理之文件控件 | |||||||||||||||||||||||||||||||
作者:佚名 文章来源:不详 点击数 更新时间:2008/4/18 14:46:16 文章录入:杜斌 责任编辑:杜斌 | |||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||
在计算系统中,文件管理一直是一个非常重要的概念。所谓的文件是指存放在外部存储介质上的数据和程序等。 在windows中编程时,下述这些功能是非常重要的:添加、移动、修改、创建、删除文件夹(目录)和文件,以及获得驱动器的信息和操作驱动器。 VB允许用下述两种不同的方法来操作驱动器、文件夹和文件。传统的方法是使用Open语句、Write#等,也可以用FileSystemObject(FSO)对象模型。从vb第一版直到如今,文件处理都是通过使用Open语句以及其它一些相关的语句和函数来实现并将逐步转向使用FSO对象模型。如果设计应用程序使用数据库文件,则在应用程序中不需要提供直接的文件访问。Date控件与绑定控件都可以向数据库读写数据,这比直接使用文件访问更容易。 下面介绍几个常用的文件控件。 在VB6.0中包括四个文件类型控件,它们分别是DriveListBox控件(驱动器列表框)、DirListBox控件(目录列表框)、FileListBox控件(文件列表框)和CommDialog控件,可以实现不同功能。 1、 DriveListBox控件 DriveListBox控件的功能是在程序的运行过程中,为用户提供一个选择有效的磁盘驱动器,该控件可以用来显示用户系统中所有有效磁盘驱动器的列表。 DriveListBox控件及后面介绍的DirListBox控件、FileListBox控件有许多标准属性,包括Enable、FontBold、FontItalic、FontName、FontSize、Height、Left、Name、Top、Visible、Width等等。此外,DriveListBox控件最重要的一个属性就是Drive属性,用来改变DriveListBox控件的缺省驱动器,该Drive属性只能在程序的代码中设置,不能通过属性窗口设置。其格式为: 驱动器列表框名称.Drive[=驱动器名] 这里的“驱动器名”是指定的驱动器,如果省略,则指当前驱动器。如果所选择的驱动器在当前系统中不存在,则产生错误。 每次重新设置驱动器列表框的Drive属性时,都将引发Change事件。 下面就是一个利用DriveListBox控件来进行程序设计的示例。 (1)添加控件 首先在空白的窗体上放置一个DriveListBox控件。 (2)添加代码 在窗体的Form_Load()事件中添加下列代码: Private Sub Form_load() 程序说明:Form_load()事件在程序运行时就会被激活。然后就会通过Drive1.Drive="e:\"这条语句来设置控件的缺省驱动器为E。 (3)存储文件,运行程序 由于在程序的Form_Load()事件中设置DriveListBox控件的缺省驱动器为E盘,所以程序的开始界面中DriveListBox控件显示的是E盘。 2、DirListBox 控件 DirListBox 控件的功能是在程序运行过程中,显示分层的列表。DirListBox 控件有几个比较重要的属性,如Path属性、List属性和ListCount属性。 (1)Path属性 Path属性用于目录列表框和文件列表框,用来设置或返回当前驱动器的路径,属性的值是一个指示路径的字符串,例如"e:\user"或"c:\PWIN95\MEDIA"。其格式为: [窗体.]目录列表框│文件列表框.Path[="路径"] Path属性也只能在程序的代码中设置,不能通过属性窗口设置。 一般在应用程序的设计中,如果用到DirListBox 控件,则同时要用到DriveListBox控件与之相关联,如下: 添加一个DriveListBox控件,一个DirListBox 控件。 设置两者同步(当DriveListBox控件的改变驱动器时,DirListBox 控件中的内容与之同步): Private Sub Drive1_Change() 设置DriveListBox控件的缺省驱动器,如为“C”盘: Private Sub Form_load() (2)List 属性 list属性的功能是返回或设置控件的列表部分的工程。 语法如下: [窗体.]控件.list(index)[=string] list属性语法包含下面部分:
对于DirListBox 控件,索引号序列(index)基于在运行中创建该控件时的当前目录和子目录。当前展开的目录用索引值-1表示,当前展开目录的上一级目录用绝对值更大一些的负索引值来表示。如,-2是当前展开的目录的父目录,-3又是它的上一级的目录。当前展开的目录以下的目录的范围是从0到ListCount-1。 例:添加一个 DriveListBox控件,一个 DirListBox 控件,并设置如下代码: Private Sub Form_load() Private Sub Drive1_Change() Private Sub Dir1_Change()
End Sub (3)ListCount属性 ListCount属性的功能是返回控件的列表部分工程的个数,对DirllistBox控件而言,ListCount 属性中存储着当前目录中子目录的个数。 Private Sub Form_Click() 3、 FileListBox 控件 FileListBox 控件的功能是在程序的运行过程中,根据path属性指定的目录,将文件定位并列举出来。 显示的文件的类型由FileListbox控件的pattern属性来决定,pattern属性可以在设计阶段用属性窗口设置,也可以通过代码设置。它的缺省值为"*.*",即显示所有的文件,如果要显示特定的文件类型,可以通过设置pattern属性来达到,例如只显示以"*.txt"或"*.exe"结尾的文件 ,可以将pattern属性设置为"*.txt"或" *.exe"。 在代码中设置pattern属性的格式为: [窗体.]文件列表框.pattern[=属性值] 如果省略“窗体”,则指当前窗体上的列表框。如果省略“=属性值”,则显示当前文件列表框的pattern属性值。 当pattern属性改变时,将产生Pattern_Change事件。 注意:用pattern属性设置多种类型文件时,两种类型中间用分号隔开,而且在运行时,pattern属性是只读的。 一个应用FileListBox 控件设计程序示例的具体的步骤如下: (1)界面设计 在空白的窗体上添加一个FileListBox 控件,添加一个Textbox控件,它的Name属性设置为Text1,Text属性设置为"文件路径:",它的作用是显示选中文件的路径和文件名。 (2)添加代码 在设计阶段双击窗体,在窗体的form_load()事件中添加下列代码: Private Sub Form_load() 在这里程序通过file1.path="c:\windows\" 这条语句就把filelistbox控件的初始值设置为"c:\windows\"。 在设计阶段双击filelistbox控件,在它的file1_click()事件添加下列是代码: Private Sub File1_click() 在语句Text1.text="文件路径:" & file1.path & "\" & file1.filename 中,file1.path存储着文件的路径,而file1.filename中存储着文件名,所以在文本框中就会显示出选中文件的路径和文件名。 (3)设置驱动器列表框、目录列表框、文件列表框三者的同步 在一个窗体上,当包含这三种控件时,应让它们同步,实现的代码如下: Private Sub Drive1_Change() Private Sub Dir1_Change() 4、 CommDialog控件 CommDialog控件的功能是提供一组标准的操作对话框,例如打开和保存文件、设置打印选项,以及选择颜色和字体等操作。 1.commondialog控件常用方法 CommDialog控件所显示对话框由控件的方法确定,在程序的运行过程中,当相应的方法被调用时,就会显示一个对话框。 CommonDialog控件的常用方法和所能显示的对话框如下表所示;
2. Action 属性 它的功能是返回或设置被显示的对话框的类型。语法如下: object.Action[=value] 参数value的设置及其相应的功能如下表所示。
3.Filter属性 Filter属性的功能是返回或设置在对话框的类型列表框中所显示的过滤器。语法结构如下: object.filter[=description1|filter1|description2|filter2.....] 其中description参数是用来描述文件类型的字符串表达式,而filter参数是用来指定文件名扩展的字符串表达式。 例如下面的程序: Private Sub Form_load()
End sub 注意:两种类型中间用分隔符或分号隔开,在代码中分隔符隔开,如果在设计阶段,在属性窗口中用分号隔开。 |
|||||||||||||||||||||||||||||||
![]() ![]() |