问题描述:
在CMainFrame类中 定义 对话框CUploadDlg * m_uldlg;
点击一菜单后 显示非模态对话框
m_uldlg=new CUploadDlg;
m_uldlg->Create(IDD_DIALOG5,this);
m_uldlg->ShowWindow(SW_SHOW);
在CUploadDlg对话框类里所做处理有:
//构造函数 ,变量关联
CUploadDlg::CUploadDlg(CWnd* pParent /*=NULL*/)
: CDialog(CUploadDlg::IDD, pParent)
, m_fname(_T(""))
, m_scale(_T(""))
, m_cor_x(_T(""))
, m_cor_y(_T(""))
, m_prjname(_T(""))
, m_authorname(_T(""))
, m_csvfname(_T(""))
{
}
void CUploadDlg::PostNcDestroy()
{
// TODO: 在此添加专用代码和/或调用基类
CDialog::PostNcDestroy();
delete this;
}
void CUploadDlg::OnOK()
{
// TODO: 在此添加专用代码和/或调用基类
DestroyWindow();
//CDialog::OnOK();
}
具体问题:现在做文件上传,第一次打开该对话框后,对话框上的各控件默认值显示正确,如构造函数中所给初值,当对话框关闭后第二次打开时,各控件初始值显示为上一次打开时 变量fname的值(如图),我在CUploadDlg对话框的OnInitDialog()函数里,加上赋值语句,或在m_uldlg->ShowWindow(SW_SHOW);之前加上赋值语句都木有解决问题,很是苦恼。
m_fname=_T("");
m_scale=_T("");
m_cor_x=m_cor_y=_T("");
m_prjname=_T("");
m_authorname=_T("");
m_csvfname=_T("");
请各位高手给点指点,怎么样才能使对话框二次打开后显示的默认值与所给初始值一致。