MFC对话框当中使用View视图

本文档详细介绍了如何在MFC对话框中使用OpenGL显示三维图形,通过创建多线程避免了消息响应冲突的问题。首先尝试按照OpenGL在MFC单文档程序中的配置方式改造对话框,但出现错误。然后参考百度文库文章,发现点击后窗口响应和MFC框架显示异常。最后,通过将显示对话框放入新线程解决错误,实现了预期效果。主要步骤包括:1) 创建带Picture Control控件的对话框;2) 派生CView类并配置OpenGL;3) 创建派生自CWndThread的类和对话框变量;4) 在主程序中使用AfxBeginThread启动新线程;5) 在对话框 OnInitDialog 函数中完成初始化。
摘要由CSDN通过智能技术生成

最近在写一个基于OpenGL的程序,程序当中的一个模块需要在对话框上面显示三维图形。因为程序的主框架程序用的是OpenGL来进行三维显示,所以很直接的想到能不能够在对话框上面使用OpenGL显示。

我首先是按照OpenGL在MFC单文档程序当中的配置方式对对话框进行了类似的配置,最后得到的结果很不理想,无法实现功能。

正所谓“他山之石,可以攻玉”,遇到问题首先去查查资料,看看别人已经做过的工作是很有必要的。首先参考的是百度文库当中共享的一篇文章——《对话框当中使用View类》(http://wenku.baidu.com/view/b36540573c1ec5da50e27075.html)。程序编译、运行出结果之后貌似没有问题,用鼠标一点击显示出来的窗口之后问题就来了:窗口相应鼠标点击的消息有误,并且MFC的框架程序当中的显示效果也别破坏了。说明当中的显示效果如下图:

而我时候这篇文章后得到的结果则很惨:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值