如何在MFC的Dialog中添加多个OpenGL窗口?

IISAR 2008-11-19 03:32:53
第一次提问哈。
请问一下各位大侠,怎么在MFC的对话框中添加多个,不止一个需要用OpenGL绘图的窗口。
添加一个的方法我已经知道。但是如果我添加两个这样的窗口。第一个窗口就不能正常显示。
...全文
240 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
IISAR 2008-11-21
  • 打赏
  • 举报
回复
不是继承的窗口类型,是直接从CWnd继承下来的。我做成控件,可以放在基于对话框的MFC主框架中。原来放一个是没有问题的。放两个以上就出现问题了。
好在我通过我前面提到的方法解决了。
jia_xiaoxin 2008-11-19
  • 打赏
  • 举报
回复
你添加的窗口是模式窗口吧?每次只能有一个显示,你可以添加非模式窗口
可以用dlg.CreateEx来创建非模式窗口。然后dlg.ShowWindow(SW_SHOW)
IISAR 2008-11-19
  • 打赏
  • 举报
回复 1
居然还是自己搞定了~~
我的理解是:因为一个线程只有一个RC,所以添加了两个窗口的话,第一个窗口的RC的值就不正确了。
在每次需要刷新的时候用wglMakeCurrent(hdc, hrc)更新RC
效果是正确了,原理不知道对不对。
这样要损失很多效率好像。
IISAR 2008-11-19
  • 打赏
  • 举报
回复
不好意思啊。好像我的分数是0 啊。貌似不能给大家分。对不住大家了,要是哪位知道,还是请不吝赐教一下。

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧