CommonDialog 控件在 Visual Basic 和 Microsoft Windows 动态连接库Commdlg.dll 例程之间提供了接口。为了用该控件创建对话框,必须要求Commdlg.dll 在 Microsoft Windows System 目录下。
为了在应用程序中使用 CommonDialog 控件,应将其添加到窗体上并设置属性。控件显示的对话由控件的方法决定。运行时,调用相应方法后将显示对话框或执行帮助引擎;设计时在窗体上将 CommonDialog 控件显示成一个图标。此图标的大小不能改变。
CommonDialog 控件可以显示如下常用对话框:
打开
另存为
颜色
字体
打印
要使用 CommonDialog 控件
1. 若未添加 CommonDialog 控件,则应从工程菜单中选定部件,将控件添加到工具箱中。在标记对话的控件中找到并选定控件,然后单击确定按钮。
2. 单击工具箱中的CommonDialog控件并在窗体上绘制该控件。在窗体上绘制 CommonDialog 控件时,控件将自动调整大小。象 Timer控件一样,CommonDialog 控件在运行时不可见。
3. 运行时,请适当使用下表所列方法显示需要的对话。
显示打开和另存为对话框
有了打开对话框就可指定驱动器、目录、文件扩展名和文件名。另存为对话框在外观上与打开对话框相同,只是对话框的标题和文件名是暗淡的。运行时选定文件并关闭对话框后,可用 FileName 属性获取选定的文件名。
要显示打开对话框
1. 指定在文件类型列表框中显示的文件过滤器列表。
可用下列格式设置 Filter 属性:
description1 | filter1 | description2 | filter2...
Description 是列表框中显示的字符串例如,"Text Files (*.txt)"。Filter 是实际的文件过滤器─例如,"*.txt"。每个description | filter 设置间必须用管道符号分隔 (|)。
2. 用 ShowOpen 方法显示对话框。
选定文件后可用 FileName 属性获取选定文件的名称。
对所有公共对话框,当 CancelError 属性为 True,而且用户单击了对话框的取消按钮时将生成一个错误。在显示对话框时捕获错误,以此检测是否按了取消按钮。
下列代码显示打开对话框并以选定的文件名为打开文件过程的参数:
Private Sub mnuFileOpen_Click () 'CancelError 为 True。 On Error GoTo ErrHandler '设置过滤器。 CommonDialog1.Filter = "All Files (*.*)|*.*|Text _ Files (*.txt)|*.txt|Batch Files (*.bat)|*.bat" '指定缺省过滤器。 CommonDialog1.FilterIndex = 2 '显示打开对话框。 CommonDialog1.ShowOpen '调用打开文件的过程。 OpenFile (CommonDialog1.FileName) Exit SubErrHandler: '用户按取消按钮。 Exit SubEnd Sub
使用颜色对话框
可用颜色对话框在调色板中选择颜色,或者创建并选定自定义颜色。运行时,选定颜色并关闭对话框后可用 Color 属性获取选定的颜色。
要显示颜色对话框
1. 将CommonDialog控件的Flags属性设置成Visual Basic常数cdlCCRGBInit。
2. 用 ShowColor 方法显示对话框。
可用 Color 属性获取选定颜色的 RGB 值。单击Command1命令按钮时,下列代码将显示颜色对话框:
Private Sub Command1_Click ()
'将 Cancel 设置成 True。
CommonDialog1.CancelError = True
On Error GoTo ErrHandler
'设置 Flags 属性。
CommonDialog1.Flags = cdlCCRGBInit
'显示颜色对话框。
CommonDialog1.ShowColor
'将窗体的背景颜色设置成选定的'颜色。
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)Form1.BackColor = CommonDialog1.Color
Exit Sub
ErrHandler:
'用户按了取消按钮。
Exit Sub
End Sub
使用字体对话框
字体对话框根据大小、颜色、样式选择字体。用户一旦在字体对话框中选定字体后,下列属性就会包含有关用户选项的信息。
要显示字体对话框
1. 将 Flags 属性设置为下述 Visual Basic 常数之一:
cdlCFScreenFonts(屏幕字体)
cdlCFPrinterFonts(打印机字体)
cdlCFBoth(既可以是屏幕字体又可以是打印机字体)
警告 在显示字体对话框之前必须将 Flags 属性设置为这些数值之一,否则将发生字体不存在错误。
2. 用 ShowFont 方法显示对话框。
下列代码根据用户在字体对话框中的选择来设置文本框的字体属性:
Private Sub Command1_Click () '将 Cancel 设置成 True。 CommonDialog1.CancelError = True On Error GoTo ErrHandler '设置 Flags 属性。 CommonDialog1.Flags = cdlCFBoth Or cdlCFEffects '显示字体对话框。 CommonDialog1.ShowFont '根据用户的选择来设置文本属性。 Text1.Font.Name = CommonDialog1.FontName Text1.Font.Size = CommonDialog1.FontSize Text1.Font.Bold = CommonDialog1.FontBold Text1.Font.Italic = CommonDialog1.FontItalic Text1.Font.Underline = CommonDialog1.FontUnderline Text1.FontStrikethru = CommonDialog1.FontStrikethru Text1.ForeColor = CommonDialog1.Color Exit Sub ErrHandler: '用户按了取消按钮。 Exit Sub End Sub
使用打印对话框
打印对话框允许用户指定打印输出的方法。用户可指定打印页数范围、打印质量、复制数目等等。此对话框还显示有当前安装的打印机信息,并允许用户进行配置或重新安装新的缺省打印机。
注意 此对话框并不真正地将数据送到打印机上。它允许用户指定如何打印数据。必须编写代码实现用选定格式打印数据。
详细信息 关于打印数据的信息,请参阅第十二章使用文本和图形。运行时,当用户在打印对话框作出选择后,下述属性将包含用户选项的信息。
要显示打印对话框
1. 通过设置相应的打印对话框属性,为对话框设置所需缺省设置值。例如,为在显示对话框时在份数框中显示 2,应将 Copies 属性设置为 2:
CommonDialog1.Copies = 2
2. 用 ShowPrinter 方法显示打印对话框。
用户单击Command1命令按钮时,下列代码将显示打印对话框:
Private Sub Command1_Click () Dim BeginPage, EndPage, NumCopies, Orientation. i '将 Cancel 设置成 True。 CommonDialog1.CancelError = True On Error GoTo ErrHandler '显示打印对话框。 CommonDialog1.ShowPrinter '从对话框中获取用户选定数值。 BeginPage= CommonDialog1.FromPage EndPage = CommonDialog1.ToPage NumCopies= CommonDialog1.Copies Orientation=CommonDialog1.Orientation For i = 1 to NumCopies '在此放置代码,将数据发送到打印机。 Next Nxit SubErrHandler: '用户按下了取消按钮。 Exit SubEnd Sub
注意 若将 PrinterDefault 属性设置为 True,则可在 Visual Basic Printer 对象上打印。另外,当 PrinterDefault 属性为 True 时,所有在打印对话框设置部分中作出的变更都将改变用户打印机设置中的打印机设置值。
使用 ShowHelp 方法显示帮助文件
可用 CommonDialog 控件的 ShowHelp 方法显示帮助文件。
要使用 ShowHelp 方法显示帮助文件
1. 设置 HelpCommand 和 HelpFile 属性。
2. 用 ShowHelp 方法显示指定的帮助文件。
在单击Command1命令按钮时,下列代码将显示指定的帮助文件:
Private Sub Command1_Click() '将 Cancel 设置为 True。 CommonDialog1.CancelError = True On Error GoTo ErrHandler '设置 HelpCommand 属性 CommonDialog1.HelpCommand = cdlHelpForceFile '指定帮助文件。 CommonDialog1.HelpFile = "c:WindowsCardfile.hlp" '显示 Windows 帮助引擎。 CommonDialog1.ShowHelp Exit SubErrHandler: '用户按下了取消按钮。 Exit SubEnd Sub
详细信息 有关显示通用对话框控件的帮助文件的详细信息,请参阅《VisualBasic 6.0语言参考手册》HelpCommand 属性、HelpFile 属性和ShowHelp 方法。
使用Data控件
内在的 Data 控件通过使用 Microsoft 的 Jet 数据库引擎来实现数据访问与 Microsoft Access 所用的数据库引擎相同。这一技术使用户可以无缝地访问很多标准的数据库格式,而且使用户无需编写任何代码就可以创建数据识别应用程序。这种内在的 Data 控件最适合较小的(桌面)数据库,诸如 Access 和 ISAM 数据库。
可以使用这种内在的 Data 控件创建应用程序来显示、编辑和更新来自多种已有的数据库的信息。这些数据库包括 Microsoft Access、Btrieve、dBASE、Microsoft FoxPro和Paradox。也可以使用这种控件如同访问真正的数据库一样来访问 Microsoft Excel、Lotus 1-2-3以及标准的 ASCII 文本文件。此外,Data 控件也可以访问和操作远程的开放式数据库连接 (ODBC)数据库,诸如 Microsoft SQL Server 以及 Oracle。
注意 Data 控件和 Remote Data 控件两者都包含在 Visual Basic 中,以提供向后兼容。不过,由于 ActiveX 数据对象 (ADO) 的适应性更广,因此建议使用 ADO Data 控件来创建新的数据库应用程序。详细信息请参阅使用 ADO Data 控件。
Data 控件、Remote Data 控件以及 ADO Data 控件在概念上很相似:三者都是将一个数据源连接到一个数据绑定控件的数据控件。三者也都共享相同的外观一组共四个按扭,使用户可以直接到达记录集的开始、记录集的末尾以及在记录集中向前或向后翻卷。
使用 Data 控件创建一个简单的数据库应用程序
要使用 Data 控件创建一个简单的数据库应用程序
1. 在窗体上放置一个 Data 控件。Data 控件是一个内在的控件,因而总是可用的。
2. 单击并选定这个 Data 控件,按 F4 键显示属性窗口。
3. 在属性窗口中,将连接属性设置为想要使用的数据库类型。
4. 在属性窗口中,将DatabaseName属性设置为想要连接的数据库的文件或目录名称。
5. 在属性窗口中,将记录源属性设置为想要访问的数据库表的名称。
6. 在该窗体上放置一个文本框控件。
7. 单击并选定这个 TextBox 控件,并在其属性窗口中将数据源属性设置为该 Data 控件。
8. 在这个属性窗口中,将数据字段属性设置为在该数据库中想要查看或修改的字段的名称。
9. 对其它的每一个想要访问的字段,重复第 6、7、8 步。
10. 按 F5 键运行这个应用程序。
设置 Data 控件与数据相关的属性
下述与数据相关的属性可以在设计时设置。这个列表给出了设置这些属性的一种逻辑顺序:
注意 数据库技术是一门复杂的科学,下面的这些建议并不意味着要当作规则来使用。
1. RecordsetTypeRecordsetType 属性决定记录集是一个表、一个动态集(dynaset)还是一个快照。这个选择将影响哪些记录集属性是可用的。例如,快照类型的记录集与 dynaset 记录集相比具有更多的限制。
2. DefaultTypeDefaultType 属性指定所使用的是 JET 工作空间,还是ODBCDirect 工作空间。
3. DefaultCursorTypeDefaultCursorType 属性决定光标的位置。可以使用 ODBC 驱动程序来决定光标的位置,或者指定服务器或 ODBC 光标。只有当使用 ODBCDirect 工作空间时,DefaultCursorType 属性才是有效的。
4. Exclusive决定该数据是用于单用户环境,还是多用户环境。
5. Options这个属性决定记录集的特征。例如,在一个多用户环境中,可以设置 Options 属性来禁止他人所做的更改。
6. BOFAction、EOFAction这两个属性决定当这个控件位于光标的开始或末尾时的行为。可能的选择包括停留在开始或末尾、移动到第一个或最后一个记录、或者添加一个新的记录(只有在末尾时)。