mfc中如何在一个对话框中调用另外一个对话框的函数
我在主对话框中定义了一些函数,可以在主对话框下调用,现在新增了一个模态对话框。我想在这个新的对话框里面调用主对话框的一些函数,还有想取得在主对话框定义的一些变量的数值。请...
我在主对话框中定义了一些函数,可以在主对话框下调用,现在新增了一个模态对话框。我想在这个新的对话框里面调用主对话框的一些函数,还有想取得在主对话框定义的一些变量的数值。请问该如何操作,先谢谢大家了
展开
9个回答
展开全部
你可以把主对话框类的指针传给新对话框.
通过这个指针调用主对话框的东西.
假设主对话框为CMainDlg,新对话框为CChildDlg;
// CChildDlg 调用主对话框的doOther函数;
// 当然非模态对话框等其他任何对话框也可以这样做.
class CMainDlg
{
void do()
{
CChildDlg dlg;
dlg.m_pMain = this;
dlg.DoModal();
}
void doOther(){}
};
class CChildDlg
{
CMainDlg m_pMain;
void do()
{
if(m_pMain!=NULL)
m_pMain->doOther();
}
CChildDlg():m_pMain(NULL){}
};
通过这个指针调用主对话框的东西.
假设主对话框为CMainDlg,新对话框为CChildDlg;
// CChildDlg 调用主对话框的doOther函数;
// 当然非模态对话框等其他任何对话框也可以这样做.
class CMainDlg
{
void do()
{
CChildDlg dlg;
dlg.m_pMain = this;
dlg.DoModal();
}
void doOther(){}
};
class CChildDlg
{
CMainDlg m_pMain;
void do()
{
if(m_pMain!=NULL)
m_pMain->doOther();
}
CChildDlg():m_pMain(NULL){}
};
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
使用全局变量,再用extern外部声明他们
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
CMasterDlg *pParent = (CMasterDlg *)GetParent();
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
PostMessage
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询