对话框和前文介绍的提示框一样是Widows系统中的一种用来和使用者实现交互的特殊窗口在Windows系统中常见的对话框根据使用方式和性质一般分成以下六种类型文件打开对话框文件保存对话框字体选择对话框颜色选择对话框和打印机设置对话框和文件打印预览对话框至于这六个对话框的在Windows系统的表现形式和所起的具体作用我想各位一定都很清楚了这里也就不一一介绍了下面就进入本节的主要内容在Visual Basic NET中制作这六种对话框和处理这些对话框的注意事项和技巧
首先要明确的是Visual Basic NET语言本身并没有提供处理对话框的功能(这一点不像上一节中所讲的提示框)所以VBNET处理对话框就必须借助外力而这种外力就是Net框架提供给所有开发Net平台应用程序的一个公用的类库Net FrameWork SDK在Net FrameWork SDK中的命名空间SystemWindowsForms中定义了六个类OpenFileDialog类SaveFileDialog类FontDialog类ColorDialog类PrintPreviewDialog类和PrintDialog类VBNET就是使用上述六个类来处理与对话框相关的操作的其中VBNET利用OpenFileDialog类来处理与文件选择对话框相关操作利用SaveFileDialog类处理和文件保存对话框相关操作利用FontDialog类处理和字体选择对话框相关操作利用ColorDialog类处理和颜色选择对话框相关操作利用PrintPreviewDialog类处理和打印预览对话框相关操作和利用PrintDialog类处理和打印机设置对话框相关操作
VBNET在使用上述六种类来处理Windows系统常见的六种对话框时其主要的步骤如下
实例化上述类即创建上述类的实例
初始化创建的实例并显示
处理对话框返回的数据
下面首先来介绍这六个类的组成结构这六个类在结构上有相似之处表现在某些类有很多名称作用相同的组成成员另外这六个类的方法结构都比较简单其中最为重要的方法是ShowDialog其作用是都是显示对话框下面主要介绍六个类的属性
一.文件选择对话框
在VBNET中创建的文件选择对话框其实就是OpenFileDialog类的实例通过对设定
OpenFileDialog类的属性来定制文件选择对话框的式样和功能OpenFileDialog类的主要属性如表
VBNET通过调用OpenFileDialog类实例的ShowDialog方法显示创建的实例这样一个文件选择对话框就显示出来了
下列代码的作用在VBNET中通过创建一个OpenFileDialog实例并设定此实例的各个属性值来定制一个可以选择多个文件的文件选择对话框并且把使用此对话框选择的多个文件名称通过提示框显示出来请各位读者注意具体的实现方法
Dim strFileName ( ) As String
定义一个字符串数组
Dim OpenFileDialog As SystemWindowsFormsOpenFileDialog = New SystemWindowsFormsOpenFileDialog ( )
创建一个OpenFileDialog实例
With OpenFileDialog
Filter = Text files (*txt)|*txt|All files (**)|**
设定文件类型过滤条件为文本类型和全部文件
FilterIndex =
设定打开文件对话框缺省的文件过滤条件
InitialDirectory = C:\
设定打开文件对话框缺省的目录
Title = 打开文件
设定打开文件对话框的标题
Multiselect = True
设定可以选择多个文件
ReadOnlyChecked = False
设定选中只读复选框
ShowReadOnly = True
设定显示只读复选框
End With
设定打开文件对话框的式样和功能
If OpenFileDialogShowDialog() = DialogResultOK Then
显示打开文件对话框并判断单击对话框中的确定按钮
strFileName = OpenFileDialogFileNames
Dim s As String
Dim i As Integer
For i = To strFileNameLength
s = s + strFileName( i ) + Chr( ) + Chr( )
Next
处理打开文件选择框选择的文件
MessageBoxShow( s 选择的文件名列表)
End If
图是上述代码定制的打开文件对话框的模样
图打开文件对话框图是上述程序中以提示框显示经过图中所示的文件选择对话框选择的数据即选择的多个文件名称
图对图中选择的数据处理后的界面二.文件保存对话框
VBNET中创建文件保存对话框是使用SaveFileDialog类SaveFileDialog类的结构OpenFileDialog类的结构非常相似表是SaveFileDialog类的主要属性及其说明
三.字体选择对话框
VBNET中创建字体选择对话框是通过FontDialog类FontDialog类结构也不复杂和上面介绍的二个类也有很多相似之处具体如表所示
四.颜色选择对话框
VBNET中创建颜色选择对话框是通过ColorDialog类ColorDialog类结构最为简单具体如表所示
五.打印机设置对话框
VBNET中创建打印机设置对话框是通过PrintDialog类表是PrintDialog类的常用属性及其说明
六.打印预览对话框
VBNET中创建打印机预览对话框是通过PrintPreviewDialog类打印机预览对话框其实也可以看成是一个窗体因为它拥有做为一个窗体所拥有的所有属性所以PrintPreviewDialog类是本文介绍的所有类中最为复杂的一个表是和打印预览对话框最为相关的属性及其说明
下列代码在VBNET中定制一个打印预览对话框
Dim PrintDocument As SystemDrawingPrintingPrintDocument = New SystemDrawingPrintingPrintDocument ( )
创建一个打印文档
Dim PrintPreviewDialog As PrintPreviewDialog = New PrintPreviewDialog ( )
With PrintPreviewDialog
MaximizeBox = False
Text = 打印预览窗口
End With
设定打印预览窗口的属性
PrintPreviewDialogDocument = PrintDocument
PrintPreviewDialogShowDialog ( )
图是上述代码定制的打印预览对话框的模样
图定制的打印预览对话框七.具体的使用方法
至此已经介绍了这六个类的组成结构和大致的用法下面就通过编写一个完成的示例来更深入的掌握这些类的使用方法在下面介绍的示例中将使用到前面介绍的四个类这个示例的功能是通过文件选择对话框打开文本文件并通过文本框来显示文本文件的内容使用字体对话框来设定文本框中的字体和前景色使用颜色对话框来设定文本对话框的背景色最后使用文件保存对话框把修改的文本框中的文字另存为一个文本文件通过对这个示例我们将更深入的掌握Visual Basic Net中对话框的使用方法以下是此示例的具体实现步骤
启动Visual Studio Net
选择菜单【文件】|【新建】|【项目】后弹出【新建项目】对话框
将【项目类型】设置为【Visual Basic项目】
将【模板】设置为【Windows应用程序】
在【名称】文本框中输入【全面掌握对话框】
在【位置】的文本框中输入【E:\VSNET项目】然后单击【确定】按钮这样在E:\VSNET项目目录中就产生了名称为全面掌握对话框的文件夹里面存放的是创建的全面掌握对话框的项目文件
把Visual Studio Net的当前窗口切换到【Formvb(设计)】窗口并从【工具箱】中的【Windows窗体组件】选项卡中按照如下顺序往Form窗体中拖入下列组件
一个TextBox组件名称为TextBox用以显示编辑文本文件
四个Button组件名称分别为ButtonButtonButton和Button程序中通过其Click事件分别实现设定文本框的字体颜色和读取保存文本等操作
一个SaveFileDialog组件名称为SaveFileDialog用以创建文件保存对话框
一个OpenFileDialog组件名称为OpenFileDialog用以创建文件打开对话框
一个FontDialog组件名称为FontDialog用以创建字体对话框
一个ColorDialog组件名称为ColorDialog用以创建颜色对话框
在上述组件拖入窗体后分别按照表所示设定各组件的属性
表【全面掌握对话框】项目中各组件主要属性值并按照图所示排列窗体中的各组件