c++中的mfc对话框之间传值问题 5
真看不懂,能发个截图吗
两种方法写一起 工程打包 ,自己琢磨去吧
方法一核心思想 主对话框中 domodal启动一个模态对话框,模态对话框的成员变量
随着模态对话框对象的生存周期,孙鑫老师的视频教程有讲过
void CMfcdlg2015Dlg::OnButton1() //方法一 domodal,子对话框的控件绑个公有变量,
//利用dlg对象生存周期
{
// TODO: Add your control notification handler code here
CTestDlg dlg;
dlg.DoModal();
if(!dlg.m_subdlgedit.IsEmpty())
{
m_listbox.AddString(dlg.m_subdlgedit);
}
}
方法二 子对话框里去 getparent 拿到父窗口的指针 进而以此指针操作父窗口控件
void CSecondDlg::OnOK() /*****方法二**********/
{
// TODO: Add extra validation here
CString s;
GetDlgItemText(IDC_EDIT1, s);
CWnd *p = GetParent();
CMfcdlg2015Dlg *pmain = (CMfcdlg2015Dlg *)p;
if(!s.IsEmpty())
{
pmain->m_listbox.AddString(s);
}
CDialog::OnOK();
}