VC 在自定义类中怎么得到主对话框指针? 10

AfxGetMainWnd(),我知道这个函数,问题是接收:CxxxxDlg*pDlg=(CxxxxDlg*)AfxGetMainWnd();肯定会提示CxxxxDlg未... AfxGetMainWnd(),我知道这个函数,问题是接收:
CxxxxDlg *pDlg=(CxxxxDlg *)AfxGetMainWnd();
肯定会提示CxxxxDlg未定义,那就定义呗,在自己类的CPP中写:
#include"xxxxDlg.h" 就会有问题,会提示enum { IDD = IDD_XXXX_DIALOG };未找到.而且Dialog中又会用到该类,容易造成头文件重复包含,在自己的类中声明class CxxxxDlg 却提示CxxxxDlg未定义!!真是麻烦,求解法
展开
 我来答
风轻云度
2008-06-03 · TA获得超过1422个赞
知道大有可为答主
回答量:1835
采纳率:0%
帮助的人:0
展开全部
保存对话框指针为全局的,然后发消息的形式。

1、全局变量或一个类来保存CDialog的指针。如:
CWnd* g_Dlg;
2、与对话框交互,可以:
if ( g_Dlg && IsWindow( g_Dlg->GetSafeHwnd() )
{
g_Dlg->PostMessage( 你要处理的消息 );
}
LongNotDragon
2008-06-03 · TA获得超过151个赞
知道小有建树答主
回答量:162
采纳率:0%
帮助的人:171万
展开全部
没出现过你这样的问题.
只要包含了相关头文件就可以了。
CClassX *pDlg=(CClassX*)AfxGetMainWnd();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式