保存对话框中点击取消的时候又弹出一次该对话框,然后再取消就可以了,为什么???
如题!
[解决办法]
else
{
return TRUE;
}
[解决办法]
TCHAR szFileters[]=_T( "Music Files(*.music)|*.music|| ");
CFileDialog dlg(FALSE,_T( "music "),_T( "*.music "),OFN_OVERWRITEPROMPT|OFN_HIDEREADONLY,szFileters);
if (dlg.DoModal() == IDOK) //这里会显示对话框
{
CString fileName = dlg.GetPathName();
CStdioFile file;
CFileException fe;
file.Open(fileName,CFile::modeCreate|CFile::modeNoTruncate|CFile::modeWrite|CFile::shareDenyWrite,&fe);
file.SeekToEnd();
file.SetLength(0);
int countmusic = m_musicdialog.m_music_list1.GetItemCount();
for (int j=0;j <countmusic;j++)
{
CString strName = m_musicdialog.m_music_list1.GetItemText(j,NULL);
file.WriteString(strName);
file.WriteString(_T( "\r "));
}
TCITEM tcitem;
tcitem.mask = TCIF_TEXT;
tcitem.pszText = _T( "Music ");
m_tab.SetItem(1,&tcitem);
m_save = TRUE;
}
else if (dlg.DoModal() ==IDCANCEL) //点cancel以后转到这里,就会再次显示对话框
{
return TRUE;
}
很正常的,记住:调用dlg.DoModal()就会显示dlg的