CFileDialog会改变当前目录。
我在处理的时候,是取得了程序运行目录,然后在那个目录下创建了文件。今天查了MSDN得知,在创建CFileDialog对象的时候,加入OFN_NOCHANGEDIR标志,可以使得文件不改变当前目录。
CFileDialog dlg(TRUE
,"*.tcrep" //默认类型名
,"Replay Name" //提示类型名
,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT|OFN_NOCHANGEDIR //标志位
,"Rep file(*.tcrep)|*.tcrep||",NULL); //下拉框类型
dlg.m_ofn.lpstrInitialDir="C://默认路径"; //指定默认路径
CString str;
if (dlg.DoModal()==IDOK)
{
str=dlg.GetPathName(); //获取选中的路径
}
本文介绍了如何使用CFileDialog对话框创建文件而不更改当前目录的方法。通过添加OFN_NOCHANGEDIR标志,可以避免对话框打开时改变工作目录。此外,还展示了如何设置默认文件类型、过滤器及初始目录。
574

被折叠的 条评论
为什么被折叠?



