步骤如下。
cstring文件pathname;
//文件名参数定义
cfiledialogDLG(true、NULL、NULL、
ofn _ hidereadonly|ofn _ overwrite prompt,
' txtfiles(*.txt ) *.txt |所有文件(*.* )|*.* ' );
//打开文件
if(DLG.domodal(==idok ) )。
//打开成功了吗
{
FilePathName=Dlg.GetPathName (;
//获取文件路径和文件名
setdlgitemtext(IDC_outputfile,文件模式;
在地址为IDC_OutPutFile的editbox中显示文件名
}
else
//打开失败处理
{
//打开失败处理
MessageBox (“无法打开”、NULL、MB_OK );
}
使用CFileDialog文件选择对话框:首先创建对象,然后指定相应的参数。 构造函数的原型如下:
cfiledialog :3360 cfiledialog (boolbopenfiledialog,
LPCTSTR lpszDefExt=NULL,
lpctstr lpsz文件名称=null,
dword dwflags=ofn _ hidereadonly|ofn _ overwrite prompt,
lpctstr lpsz过滤器=null,
CWnd* pParentWnd=NULL;
参数的含义如下。
openfile dialog-- -如果为true,则显示“打开”对话框;如果为FALSE,则显示“保存对话框文件”对话框。
lpszDefExt -----指定默认的文件扩展名。
lpsz文件名-----指定默认文件名。
dwFlags -----表示特定样式。
lpszFilter -----是最重要的参数之一,表示可用的文件类型和相应的扩展名。
参数格式如下。
' chartfiles(*.xlc ) *.xlc (.xls ) *.xls ().xlc; *.xls(|*.xlc; *.xls|allfiles(*.*|*.*|| '; 文件类型说明和扩展名之间用|分隔,同一类型文件的扩展名之间可以使用; 分割,各文件类型之间用|分隔,末尾用||表示。
pParentWnd -----指向父窗口的指针。
在“创建文件”对话框中可以使用DoModal ()。 返回后,可以使用以下函数获得用户选择:
cstring cfiledialog :3360 get pathname ()检索包含目录名称和扩展名(如c: est est1.txt )的完整文件名
cstring cfiledialog :3360 getfilename ()获取扩展名为test1.txt的完整文件名
cstring cfiledialog :3360 get extname ()具有完整的文件扩展名,如txt
cstring cfiledialog :3360 getfile title ()获取完整的文件名,不包含目录名和test1等扩展名
当选择多个文件时,position cfiledialog :3360 get start position ()将获取第一个文件的位置。
如果选择多个文件,cstring cfiledialog :3360 get next pathname (position pos )将获取以下文件的位置,并同时返回当前文件名: 但是,要获取第一个POSITION变量,必须已经调用position cfiledialog 33603360 get start position ()。