【发布时间】:2026-01-15 14:55:02
【问题描述】:
我正在 MFC 中编写我的第一个应用程序,我希望包含一个非常简单的功能:包含一个“保存到文件”按钮,单击该按钮会弹出熟悉的“另存为..”对话框和最终将数据保存在文本文件中。我找不到如何调用此对话框 - 有人可以指出正确的方法吗?
【问题讨论】:
标签: visual-studio-2008 visual-c++ mfc file-io savefiledialog
我正在 MFC 中编写我的第一个应用程序,我希望包含一个非常简单的功能:包含一个“保存到文件”按钮,单击该按钮会弹出熟悉的“另存为..”对话框和最终将数据保存在文本文件中。我找不到如何调用此对话框 - 有人可以指出正确的方法吗?
【问题讨论】:
标签: visual-studio-2008 visual-c++ mfc file-io savefiledialog
你需要的是 CFileDialog :
CFileDialog d(FALSE);
if(IDOK == d.DoModal())
{
CString sFileName = dlg.GetPathName();
// ... Save your text to the file
}
CFileDialog 构造函数中有许多参数可以更改以影响对话框的行为,请查看 MSDN 文档了解详细信息。
【讨论】:
对于您所描述的内容,您可能应该只使用CEditView 而不是编写自己的代码。它是预先编写的、经过测试的等等。
对于大多数其他情况,您应该意识到 MFC 本身通常会处理创建 Save As... 对话框等的细节,因此您通常只需将代码放入文档类的 Serialize() 成员函数中即可读取并写入您的文档数据。它传递了对CArchive 对象的引用,因此您所要做的就是为您的文档对象写入或读取数据。
【讨论】: