日积一步7(如何在win32环境下调用CDialogFile)

#include   //需要包含的头文件
bool FilePath::GetFilePath(char *opsPath, int szPath, bool fileopen)  //fileopen==true,读数据;fileopen==false,写数据
{
	AFX_MANAGE_STATE(AfxGetStaticModuleState());  //需要包含的语句
	/*CFileDialog dlg(fileopen, "数据文件(*,txt)|*.txt", "data.txt", OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
		"(数据文件 *.txt)|*.txt|(其它格式 *.*)|*.*||", NULL);*/
	if (fileopen)
	{
		CFileDialog  dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY, _T("所有文件 (*.*)|*.*|文本文件 (*.txt)|*.txt|刀位文件(*.apt)|*.apt|"), NULL);
		dlg.m_ofn.lpstrTitle = "选择文件";
		dlg.m_ofn.lpstrInitialDir = opsPath;
		if (dlg.DoModal() == IDOK)
		{
			CString str = dlg.GetPathName();
			strcpy_s(opsPath, szPath, (LPCSTR)str);
			return true;
		}
	}
	else
	{
		CFileDialog  dlg(FALSE, NULL, NULL, OFN_HIDEREADONLY| OFN_OVERWRITEPROMPT, _T("所有文件 (*.*)|*.*|文本文件 (*.txt)|*.txt|刀位文件(*.apt)|*.apt|"), NULL);
		dlg.m_ofn.lpstrTitle = "另存为";
		dlg.m_ofn.lpstrInitialDir = opsPath;
		if (dlg.DoModal() == IDOK)
		{
			CString str = dlg.GetPathName();
			strcpy_s(opsPath, szPath, (LPCSTR)str);
			return true;
		}
	}

	
	return false;
}

 

你可能感兴趣的:(编程)