我的对话框类中有一个 OnMove 处理程序,它用控制对象(即 CButton)做一些事情。我发现这个处理程序在调用对话框 OnInitDialog 方法之前被调用,因此当我尝试调用子控件上的方法时,我在调试中得到 ASSERTS,因为控件尚不存在......它们是在 OnInitDialog 中创建的.
我想检查两件事:
- 我如何知道对话框已经初始化?
- 如何检查已创建单个 CWnd 控件对象的窗口?
在这两种情况下,我都在寻找可以使用的类成员或方法调用结果。
最佳答案
在
中设置一个标志OnInitDialog
使用对话框的
m_hWnd
:if ( ::IsWindow(m_Ctrl.m_hWnd) ) { ... }
关于c++ - 如何判断是否已创建/初始化 MFC 对话框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2973467/