送出100分!关于文件保存的问题,急!
我在多文档界面中定义了一个文件保存函数,代码如下:
void CControlView::OnFileSave2()
{
CFileDialog dlg(FALSE,"",NULL,OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"控制文件(*.*)|*.*|",NULL);
if(dlg.DoModal()==IDOK)
{
CCONTROLDoc * pDoc=GetDocument();
UpdateData(TRUE);
CFile f;
VERIFY(f.Open(dlg.GetPathName(),CFile::modeCreate|CFile::modeWrite));
CArchive ar(&f,CArchive::store);
GetDlgItem(IDC_EDIT1)->GetWindowText(constr[0]);
constr[0]="$PROBLEM "+constr[0]+"\r\n";
ar.WriteString(constr[0]);
constr[1]="$INPUT";
if(m_idchk==TRUE)
constr[1]=constr[1]+" ID";
if(m_timechk==TRUE)
constr[1]=constr[1]+" TIME";
if(m_amtchk==TRUE)
constr[1]=constr[1]+" AMT";
if(m_wtchk==TRUE)
constr[1]=constr[1]+" WT";
if(m_apgrchk==TRUE)
constr[1]=constr[1]+" APGR";
if(m_dvchk==TRUE)
constr[1]=constr[1]+" DV";
constr[1]=constr[1]+"\r\n";
ar.WriteString(constr[1]);
pDoc->SetPathName(dlg.GetPathName());
ar.Close();
f.Close();
}
}
点击菜单中的"保存"能正常保存文件,但有一点问题:当我打开一个已保存的文件例如cf,修改后再点"保存",程序又弹出保存对话框,如果我输入文件名cf1,还是能成功保存.但是按道理说不应该再弹出保存对话框的,应该直接保存到文件cf1中.请问各位大侠,该如何解决这个问题?