CFileDialog指定文件后缀
时间: 2024-11-27 07:13:30 浏览: 39
在MFC(Microsoft Foundation Classes)中,`CFileDialog`是一个用于弹出文件或目录选择对话框的工具类。当你想限制用户只能选择特定类型的文件时,可以设置`CFileDialog`的` OFN过滤器`属性(`ofn.lpstrFilter`)来指定特定的文件后缀。
例如,如果你想让用户只可以选择`.txt`和`.docx`文件,你可以这样做:
```cpp
CFileDialog dialog(TRUE, NULL, NULL, // 是否保存对话结果
OFN_HIDEREADONLY | OFN_FILEMUSTEXIST |
OFN_PATHNAME Extensions, // OFN_EXPLORER for a directory picker
"Text files (*.txt;*.docx)|*.txt;*.docx", // 过滤器字符串
NULL); // 打开模式
// 设置过滤器标题,这里省略
dialog.m_ofn.lpstrTitle = L"Select a file";
// 显示对话框并获取用户选择
if (dialog.DoModal() == IDOK)
{
CString filePath = dialog.GetPathName(); // 获取选中的路径
// 对于文件操作...
}
```
在这个例子中,`|`字符分隔了每个文件类型,并用`*`通配符匹配任意字符。`(*.txt)`表示包含".txt"的所有文件,`.docx`则直接指定了".docx"文件。
阅读全文