mfc一个对话框上创建另外一个对话框 被创建的对话框如何获得前一个对话框的指针

mfc一个对话框上创建另外一个对话框 被创建的对话框如何获得前一个对话框的指针,第1张

修改“另一个对话框”的构造函数,改为有参构造函数

参数就是你“一个对话框”的类型的指针

再然后就是创建对话框对象的时候把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类型的对话框的指针啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9595205.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存