c++中的mfc对话框之间传值问题 5

c++中的mfc,创建了一个基于对话框的程序,怎么实现多个对话框间的传值,,就是把子对话框的编辑框中的内容放进父对话框的编辑框(或列表框)中,,求指教,,最好带截图... c++中的mfc,创建了一个基于对话框的程序,怎么实现多个对话框间的传值,,就是把子对话框的编辑框中的内容放进父对话框的编辑框(或列表框)中,,求指教,,最好带截图 展开
 我来答
GetSafeHwnd
2015-06-21 · TA获得超过918个赞
知道大有可为答主
回答量:1068
采纳率:76%
帮助的人:746万
展开全部
GetParent得到父窗口类的CWnd*类型指针然后 强制转换为 父窗口类指针 , 然后 用该类的指针操作该类的窗口 及 控件,老师没教你么
追问
真看不懂,能发个截图吗
追答

两种方法写一起 工程打包 ,自己琢磨去吧 

方法一核心思想  主对话框中 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();

}


推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式