VC++开发GIS系统(70)补充知识MFC中CFileDialog的使用
发布时间: 2015-12-24
所属分类: VC++开发GIS系统
CFileDialog是在MFC开发中常用到的一个函数,本系统中也会用到,这里做一个简要的介绍。
函数原型
CFileDialog:CFileDialog(BOOL bOpenFileDialog, LPCTSTR lpszDefExt=NULL, LPCTSTR lpszFileName=NULL, DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, LPCTSTR lpszFilter=NULL, CWnd * pParentWnd=NULL);
相关参数介绍:
bOpenFileDialog:TRUE为打开文件对话框;FALSE为保存文件对话框
lpszDefExt:默认的扩展名
lpszFileName:默认显示在文件名组合框的编辑框的文件名
dwFlags:对话框风格,一般为OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, 即隐藏只读选项和覆盖已有文件前提示。
常见的对话框风格有:
OFN_HIDEREADONLY:隐藏只读选项
OFN_OVERWRITEPROMPT:覆盖已有文件前提
OFN_ALLOWMULTISELECT:允许选择多个文件
OFN_CREATEPROMPT:如果输入的文件名不存在,则对话框返回询问用户是否根据次文件名创建文件的消息框
OFN_FILEMUSTEXIST:只能输入已存在的文件名
OFN_FORCESHOWHIDDEN:可以显示隐藏的文件
OFN_NOREADONLYRETURN:不返回只读文件
OFN_OVERWRITEPROMPT:保存的文件已存在时,显示文件已存在的信息
lpszFilter:文件筛选类型,它指明可供选择的文件类型和相应的扩展名。
如:
"Chart Files (*.xlc)|*.xlc|Worksheet Files (*.xls)|*.xls|Data Files (*.xlc;*.xls)|*.xlc; *.xls|All Files (*.*)|*.*||";文件类型说明和扩展名间用 | 分隔,同种类型文件的扩展名间可以用 ; 分割,每种文件类型间用 | 分隔, 末尾用 || 指明 。
常用属性
CFileDialog dialog;
dialog.m_ofn.lpstrTitle:显示窗口标题。
dialog.m_ofn.lpstrInitialDir:初始化展开路径。
dlg.m_ofn.lpstrFile:默认文件
常用方法
INT_PTR CFileDialog::DoModal() 显示文件操作对话框,常用返回值:IDOK,点击了打开确定操作 IDCANCEL,取消
CString CFileDialog::GetPathName( ) 得到完整的文件名,包括目录名和扩展名 如:c:\test\test.txt。注,多文件选择时返回目录名
CString CFileDialog::GetFileName( ) 得到完整的文件名,包括扩展名如:test.txt
CString CFileDialog::GetFileExt( ) 得到完整的文件扩展名,如:txt
CString CFileDialog::GetFileTitle ( ) 得到完整的文件名,不包括目录名和扩展名如:test
POSITION CFileDialog::GetStartPosition( ) 对于选择了多个文件的情况得到第一个文件位置。
CString CFileDialog::GetNextPathName( POSITION& pos ) 对于选择了多个文件的情况得到下一个文件位置,并同时返回当前文件名。但必须已经调用过POSITION CFileDialog::GetStartPosition( )来得到最初的POSITION变量。
相关阅读
声明
1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。
2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。
手机阅读
公众号关注
知识星球
手机阅读
最新GIS干货
私享圈子