MFC 两个dialog怎么在dialog1中调用2的函数 让2完成一些动作
dialog2中有个函数假如叫rrr()我怎么在1中有效调用这个函数这个函数仅仅是让2完成一些动作不涉及别的对话框...
dialog2中有个函数 假如叫rrr() 我怎么在1中有效调用这个函数 这个函数仅仅是让2完成一些动作 不涉及别的对话框
展开
2个回答
展开全部
在1中调用2的窗口指针就可以了。自己定义一个static变量,返回2的窗口指针给1。
伪代码。
class Cdialog2
{
public:
static Cdialog2* m_pDlg2;
}
cpp 文件中初始化指针:
Cdialog2* Cdialog2::m_pDlg2 = NULL;
在dialog2窗口初始化时将this指针赋给m_pDlg2,即可:
m_pDlg2 = this;
伪代码。
class Cdialog2
{
public:
static Cdialog2* m_pDlg2;
}
cpp 文件中初始化指针:
Cdialog2* Cdialog2::m_pDlg2 = NULL;
在dialog2窗口初始化时将this指针赋给m_pDlg2,即可:
m_pDlg2 = this;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1、dialog1调用dialog2(dialog2为子窗口,dialog1为父窗口)
Cdialog2Dlg dlg;
dlg.rrr();
2、dialog1调用dialog2(dialog1为子窗口,dialog2为父窗口)
Cdialog2Dlg *p;
p=(Cdialog2Dlg *) GetParent();
p->rrr();
以上均要将rrr()函数放在dialog2中的public部分
Cdialog2Dlg dlg;
dlg.rrr();
2、dialog1调用dialog2(dialog1为子窗口,dialog2为父窗口)
Cdialog2Dlg *p;
p=(Cdialog2Dlg *) GetParent();
p->rrr();
以上均要将rrr()函数放在dialog2中的public部分
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询