CFileDialog用法
来源:互联网 发布:淘宝88会员 8.8折 编辑:程序博客网 时间:2024/05/17 23:33
CFileDialog的用来构建一个标准的Windows文件对话框,原型如下
CFileDialog(BOOL bOpenFileDialog, // TRUE for FileOpen, FALSE for FileSaveAsLPCTSTR lpszDefExt = NULL,LPCTSTR lpszFileName = NULL,DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,LPCTSTR lpszFilter = NULL,CWnd* pParentWnd = NULL,DWORD dwSize = 0,BOOL bVistaStyle = TRUE);
MFC使用这个参数来确定适当的类来创建对话框
(例如,新的Windows 2000的对话框而不是NT4对话框)。
默认大小为0意味着MFC代码将确定正确的对话框的大小
使用基于操作系统版本上运行程序。bVistaStyle注意这个参数在Visual Studio 2008之后可用后,
新型的对话框只在Windows Vista或之后可运行使用。
设置为TRUE使用新版本对话框风格,False使用旧的对话框风格.
例
CFileDialog dlg(true,NULL,NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT|OFN_NOCHANGEDIR,L"所有图像文件(*.bmp; *.jpg)|*.bmp; *.jpg|所有文件(*.*)|*.*||");if (dlg.DoModal()==IDOK){CString a = dlg.GetFileTitle();MessageBox(a);}
读取多个文件的方法
//定制文件对话框
CFileDialog dlg(TRUE,
"DEM Files (*DEM)",
NULL,
OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT |OFN_ALLOWMULTISELECT|OFN_ENABLESIZING,
_T("Layer Files (*.DEM;*.TIFF;*.BMP;*.JPG)|*.DEM;*.TIFF;*.BMP;*.JPG;)||"),
NULL);
dlg.m_ofn.lpstrTitle="请加载相关图层";
//最多可以打开100个文件
dlg.m_ofn.nMaxFile = 100 * MAX_PATH;
dlg.m_ofn.lpstrFile = new TCHAR[dlg.m_ofn.nMaxFile];
ZeroMemory(dlg.m_ofn.lpstrFile, sizeof(TCHAR) * dlg.m_ofn.nMaxFile);
//显示文件对话框,获得文件名集合
int retval = dlg.DoModal();
if(retval==IDCANCEL)
return false;
POSITION pos_file;
pos_file = dlg.GetStartPosition();
CArray<CString, CString> ary_filename;
while(pos_file != NULL)
ary_filename.Add(dlg.GetNextPathName(pos_file));
//根据扩展名读取相关文件
for(int i=0; i<ary_filename.GetSize(); i++)
{
CString str_ext;
str_ext = ary_filename.GetAt(i).Right(3);
if((str_ext == "DEM")||(str_ext == "dem"))
{
}
else if((str_ext == "TIFF")||(str_ext == "tiff"))
{
}
else if((str_ext == "BMP")||(str_ext == "bmp"))
{
}
else if((str_ext == "JPG")||(str_ext == "jpg"))
{
}
else if((str_ext == "SHP")||(str_ext == "shp"))
{
}
}
return true;
- CFiledialog 用法
- CFileDialog 用法
- CFileDialog用法
- CFileDialog用法
- CFileDialog用法
- CFileDialog用法
- CFileDialog用法
- CFileDialog用法详解
- CFileDialog 的用法
- CFileDialog的用法简介!!
- CFileDialog的用法简介!!
- CFileDialog/CColorDialog/CFontDialog用法
- CFileDialog的用法简介
- CFileDialog的用法简介
- CFileDialog的用法简介
- CFileDialog过滤的用法
- vc 中的cfiledialog用法
- CFileDialog用法详解
- vb.net数据库编程(02):再来一个非查询的简单例子
- linux signal IPC进程间通信
- Java中的Enum的使用与分析
- 寒假刷题之5——竹简文
- 循环输出BMap.Marker标记
- CFileDialog用法
- 使用dom4j出现乱码解决方案
- win7防火墙设置开放某个端口
- Sencha Touch与PhoneGap,响应android返回按钮
- Android Activity之间切换出现短暂黑屏的处理方法
- mysql 新安装root 密码初始
- Logger与LogFactory
- Android开发--Json数据的解析
- XP系统密码修改策略管理