3259|5

74

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

线程中创建非模式对话框 [复制链接]

我在线程中用
pDlg->m_pDlgScreenMap = new CScreenMap();
pDlg->m_pDlgScreenMap->Create(IDD_DIALOG_SCREENMAP,NULL);
pDlg->m_pDlgScreenMap->ShowWindow(SW_SHOW);
pDlg->m_pDlgScreenMap->UpdateWindow();
创建对话框,结果出现异常
异常的地方在:
               CHandleMap* pMap = afxMapHWND();
                ASSERT(pMap != NULL);

                CObject* p;
                ASSERT((p = pMap->LookupPermanent(m_hWnd)) != NULL ||
                        (p = pMap->LookupTemporary(m_hWnd)) != NULL);
                ASSERT((CWnd*)p == this);   // must be us

最新回复

在工作者线程里创建窗口,应该会出问题的。在主线程里做吧。  详情 回复 发表于 2008-8-30 10:22
点赞 关注

回复
举报

52

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
我很急,有没有人会呀!!!先谢谢了
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
没看明白。


出现异常一般都是代码的问题。

如果你在创建CScreenMap的时候出异常,就在
CScreenMap的初始化部分单步跟进去看看就行了。

如果在后面,就看后面代码做了什么操作。
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

4
 
在pDlg->m_pDlgScreenMap->Create(IDD_DIALOG_SCREENMAP,NULL); 之后有异常
异常在ASSERT(pMap != NULL);
这,我跟进去看了,没看懂
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

5
 

你要在CScreenMap类的创建的代码中跟。
象wm_create,或者WM_INITDIALOG中。
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

6
 
在工作者线程里创建窗口,应该会出问题的。在主线程里做吧。
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表