
修改“另一个对话框”的构造函数,改为有参构造函数
参数就是你“一个对话框”的类型的指针。
再然后就是创建对话框对象的时候把this指针送进去而已。
C++的基础没问题的话说到这种程度应该就知道怎么改了……
在CWnd的派生类中可以调用GetDescendantWindow(ID值, FALSE )这个函数,返回对话框的指针,第一个参数是对话框的ID,第二个参数为真时只有永久性的窗口才可以返回,为假时可以返回一个临时窗口。
GetDlgItem(ID名称)
这个可以得到控件对应类的指针,但是用的时候要强制转换一下
例如:(CButton )(GetDlgItem(ID名称))->ShowWindow(SW_HIDE);
转换之后,这个指针就具有CButton类的属性和方法。特别适用于自己派生的类
如果你的ID的值(注意,这里是ID的那个宏的值,是数字)是连续的话,可以用一个循环来处理里面的所有控件
如果你不想去管ID,那可以用FindWindowEx来做,具体用法查找百度或CSDN
保存对话框指针为全局的,然后发消息的形式。
1、全局变量或一个类来保存CDialog的指针。如:
CWnd g_Dlg;
2、与对话框交互,可以:
if ( g_Dlg && IsWindow( g_Dlg->GetSafeHwnd() )
{
g_Dlg->PostMessage( 你要处理的消息 );
}
以上就是关于mfc一个对话框上创建另外一个对话框 被创建的对话框如何获得前一个对话框的指针全部的内容,包括:mfc一个对话框上创建另外一个对话框 被创建的对话框如何获得前一个对话框的指针、如何获得一个d出对话框的指针、请教MFC中怎样获得指向child类型的对话框的指针啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)