2.3.3 常见对话框的种类(2)
消息对话框的图标风格信息如表2-5所示。
表2-5 图标风格信息
2.通用对话框
Windows通用对话框是由操作系统提供的,任何应用程序都可获得Windows通用对话框。Visual C++(www.cppentry.com)对通用对话框进行了封装,这样在开发程序时可以随时调用它们。但是当Windows通用对话框从用户获取消息并返回相应的消息时,并不进行消息处理。如果用户要进行更进一步的处理,还需要自行为进一步的处理添加代码。接下来简单介绍使用通用对话框的方法。
(1) 使用"文件"对话框打开和保存文件
"文件"对话框十分重要,它是"打开"和"保存"文件的接口。在MFC中,CFileDialog类封装了"文件"对话框,在使用"文件"对话框时需要创建一个"文件"对话框对象,通过构造函数进行初始化。
语法格式如下:
- CFileDialog(
- BOOL bOpenFileDialog,
- LPCTSTR lpszDefExt=NULL,
- LPCTSTR lpszFileName=NULL,
- DWORD dwFlags=OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,
- LPCTSTR lpszFilter=NULL,
- CWnd *pParentWnd=NULL
- );
CFileDialog构造函数中的参数说明如表2-6所示。
表2-6 CFileDialog构造函数中的参数说明
|
参 数< xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> |
描 述 |
|
bOpenFileDialog |
如果值为TRUE,构造“打开”对话框;
为FALSE,构造“另存为”对话框 |
|
lpszDefExt |
用于确定文件默认的扩展名,如果为NULL,
没有扩展名被插入到文件名中 |
|
lpszFileName |
确定编辑框中初始化时的文件名称,如果为
NULL,编辑框中没有文件名称 |
|
dwFlags |
用于自定义“文件”对话框 |
|
lpszFilter |
用于指定对话框过滤的文件类型 |
|
pParentWnd |
标识“文件”对话框的父窗口指针 |
注意:lpszFilter参数格式--文件类型说明和扩展名间用"|"分隔,每种文件类型间用"|"分隔,末尾用"||"结束。
在使用"文件"对话框时,还需要通过"文件"对话框的一些常用函数来实现用户需要的功能。"文件"对话框的常用函数如表2-7所示。
(2) 使用"字体"对话框设置文本字体
CFontDialog类封装了Windows的"字体"对话框。我们可以从系统安装的字体列表中选择要用的字体,同时在"字体"对话框中还可以设置字体大小、颜色、效果、字符集等属性。可以通过构造函数CFontDialog来构造"字体"对话框。
表2-7 "文件"对话框的常用函数
|
函 数 |
功能描述 |
|
DoModal |
用于显示“文件”对话框,供用户选择文件 |
|
GetPathName |
用于返回用户选择文件的完整路径,
包括文件的路径、文件名和文件扩展名 |
|
GetFileName |
用于返回用户选择的文件名称,包括
文件名和扩展名,但不包含路径 |
|
GetFileExt |
用于返回“文件”对话框中输入的文件扩展名 |
|
GetFileTitle |
用于返回“文件”对话框中输入的文件
名称,不包含路径和扩展名 |
|
OnFileNameOK |
用于检查“文件”名称是否正确 |