MFC中文件对话框类CFileDialog详解及文件过滤器说明
CFileDialog类封装了Windows常用的文件对话框。常用的文件对话框提供了一种简单的与Windows标准相一致的文件打开和文件存盘对话框功能。
成员变量:m_ofn
:m_ofn是OPENFILENAME类型的结构。使用此结构,在创建之后、用DoModal成员函数显示之前初始化文件打开和存盘对话框的外表。
- ①m_ofn的
lpstrTitle
成员是文件对话框的标题:dlg.m_ofn.lpstrTitle = _T("打开文件"); // 打开文件对话框的标题名(dlg是一个CFileDialog类的对象)
- ②m_ofn的
Flag
成员是文件对话框的一些属性标记,可以是一些标记的组合,这些标志可在CFileDialog类的构造函数的第四个参数dwFlags中指定。- OFN_ALLOWMULTISELECT :指定文件名列表框允许多选。
- OFN_EXPLORER :指出任何打开或另存为对话框使用新的Explorer风格的用户化模块。(VC6中不支持)
成员函数:
(1) 构造函数
CFileDialog(BOOL bOpenFileDialog,
LPCTSTR lpszDefExt = NULL,
LPCTSTR lpszFileName = NULL,
DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
LPCTSTR lpszFilter = NULL,
CWnd* pParentWnd = NULL
);
参数:
- bOpenFileDialg:如果为TRUE,则创建文件打开对话框;如果为FALSE,则构造一个File Save As(另存为)对话框。
- lpszDefExt:缺省文件扩展名,如果用户在文件名编辑框中不包含扩展名,则lpszDefExt定义的扩展名自动加到文件名后。如果为NULL,则不添加扩展名。
- lpszFileName:初始显示于文件名编辑框中的文件名,如果为NULL,则不显示初始文件名。
- dwFlags:一个或多个标志的组合,使你可定制对话框。即OPENFILENAME结构中的Flag成员。
- lpszFilter:一列字符串对,指定可以应用到文件的过滤器。如果指定过滤器,则只有符合规则的文件显示于文件列表框中。
- pParentWnd 指向文件对话框对象的父窗口或拥有者窗口。
(2) int DoModal();
//弹出文件对话框
返回值:
- IDOK:表示用户在文件对话框中选择了文件并点击了“打开”按钮。
- IDCANCEL:表示用户在文件对话框中点击了“取消”按钮。
(3) CString GetFileName( );
//返回文件名
说明:文件名包括基本名和扩展名,例如:对于文件C:\FILES\TEXT.DAT,则会返回:TEXT.DAT
如果m_ofn.Flags具有OFN_ALLOWMULTISELECT标志设置,则应用GetStart-Position 和GetNextPathName成员函数获取一个文件路径名。
(4) CString GetFileTitle();
//返回文件基本名
(5) CString GetFileExt( );
//返回文件名的扩展名
(6) CString GetPathName( );
//返回文件的完整路径
说明:调用此成员函数获取输入到对话框中文件的全路径,路径包括文件标题和文件的全部目录路径。如果对文件“C:\FILES\TEXT.DAT”调用此成员函数,GetRathMane则会返回“C:\FILES\TEXT.DAT”。
文件过滤器说明:
lpszFilter参数用于判断文件名类型及文件列表框中哪些可被显示。双字符串的第一个字符串描述过滤器,第二个串表明使用的文件扩展名,多重扩展可用“;”来指定。字符串由两个“|”字符结尾,最后是一个NULL。也可使用CString对象作为参数。
例如:有两个过滤规则,一个是图片文件:.bmp或者.jpg;另一个是所有文件:*.*
。则过滤规则为:" 图片文件 |*.jpg;*.bmp | 所有文件 | *.* ||"
例如:Mirosoft Excel 允许用户用.XLC扩展名(表)或.XLS(工作表)打开文件,Excel过滤器应如下:"Chart Files (*.xlc)|*.xlc|Worksheet Files (*.xls)|*.xls|Data Files (*.xlc;*.xls)|*.xlc; *.xls|All Files (*.*)|*.*||";
上一篇 利用OpenCV从摄像头获得图像的坐标原点是在左下角
下一篇 Office 使用笔记
页面信息
location:
protocol
: host
: hostname
: origin
: pathname
: href
: document:
referrer
: navigator:
platform
: userAgent
: