社区
C++ 语言
帖子详情
如何在MFC的Dialog中添加多个OpenGL窗口?
IISAR
2008-11-19 03:32:53
第一次提问哈。
请问一下各位大侠,怎么在MFC的对话框中添加多个,不止一个需要用OpenGL绘图的窗口。
添加一个的方法我已经知道。但是如果我添加两个这样的窗口。第一个窗口就不能正常显示。
...全文
214
4
打赏
收藏
如何在MFC的Dialog中添加多个OpenGL窗口?
第一次提问哈。 请问一下各位大侠,怎么在MFC的对话框中添加多个,不止一个需要用OpenGL绘图的窗口。 添加一个的方法我已经知道。但是如果我添加两个这样的窗口。第一个窗口就不能正常显示。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用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 啊。貌似不能给大家分。对不住大家了,要是哪位知道,还是请不吝赐教一下。
Visual C++ 编程资源大全(英文源码 图形)
1,01.zipDisplaying a 256 color bitmap在程序
中
显示256色的位图(6KB)2,02.zipCreating a bitmap object from a BMP file从位图文件
中
创建位图对象(6KB)3,03.zipAn auto-sizing bitmap picture control一个自适应大小的位图控件(16KB)4,04.zipWriting a bitmap to a BMP file将一个位图写到BMP文件
中
(11KB)5,05.zipBitmap background in MDI Client在多文档客户程序
中
增加位图底图(4KB)6,06.zipConverting a bitmap to a region将一个位图转换成一个区域(7KB)7,07.zipConverting a bitmap to a region - memory leak fix 将一个位图转换成一个区域--内存泄露的修正(4KB)8,08.zipTransparent Bitmap实现透明的位图(7KB)9,09.zipCopying a bitmap to clipboard拷贝一个位图到剪贴板(5KB)10,10.zipConverting DDB to DIB将一个设备相关的位图转换成设备无关的位图(6KB)11,11.zipConverting DIB to DDB将一个设备无关的位图转换成设备相关的位图(5KB)12,12.zipCreating a DIB section from a BMP file 从BMP文件
中
创建一个设备无关的位图(5KB)13,13.zipGetting the dimensions of a bitmap得到一个位图的尺寸(4KB)14,14.zipDraw bitmap with grayed 3D effect画一副3维灰边的位图(6KB)15,15.zipDrawing a bitmap显示位图(7KB)16,16.zipDrawing a bitmap from a BMP file从BMP文件
中
装入位图并显示(6KB)17,17.zipEBGFX Library 推荐一个强大的EBGFX图形库(15KB)18,18.zipEmboss text and other shape on your bitmap 将文字以浮雕方式嵌入你的位图(7KB)19,19.zipApply a 3D bitmap pattern on text or other shapes将文字上色(3维的位图模板)(6KB)20,20.zipEncapsulated Dib API压缩设备无关位图的API(5KB)21,21.zipAn enhanced DIBLOOK sample 一个增强的DIBLOOK例子(5KB)22,22.zipFade in / Fade out Images using Palette animation使用生动的调色板淡入/淡出位图(8KB)23,23.zipPainting the background for a CFormView derived class在CFromView
中
画背景图(7KB)24,24.zipGradient Fill 有坡度的填充(5KB)25,25.zipPaint a Gradient Color Background显示渐变的背景(6KB)26,26.zipDrawing an image in grayscale画位图到一个灰色刻度
中
(5KB)27,27.zipFading from color to grayscale a
用多线程方法实现在
MFC
/WIN32
中
调用
OpenGL
函数并创建
OpenGL
窗口
文章原创,转载请注明出处
OpenGL
相关的工具库
中
的
OpenGL
程序往往都是在C函数main
中
初始化和创建的,使用控制台来完成显示和控制颇为不便。如果能够在
MFC
中
OpenGL
函数并创建
OpenGL
窗口
,并且可以将控制参数传入给
OpenGL
则可以得到很好的交互性能。自己查找很多文献资料,貌似都是说要在
MFC
中
显示
OpenGL
都是通过微软的wgl扩展来完成,但是wgl很早
在对话框
中
dialog
创建简单
opengl
程序
前言:用
opengl
库在
mfc
对话框程序
中
创建简单的
opengl
程序 开发环境:vs2010+
opengl
库 步骤: 1.用vs2010创建
mfc
dialog
对话框程序 直接点击完成,创建工程结束。 2.删掉对话框上面的lable,及button按钮 3.打开对话框页,并选择“”项目“
中
的 ”
添加
类向导“ 打开
添加
类向导对话框
基于
MFC
对话框的
OpenGL
三维图形开发
以三维动态球体模型来讲述基于
MFC
对话框的
OpenGL
编程 1.基本思想 在Windows98/NT平台下,GDI是原始
窗口
的图形接口。而GDI实现这些是通过一个设备描述表DC来实现的。现在通过
OpenGL
绘图需要创建绘图描述表RC。但是RC并不能直接完成绘图,只能与特定的DC联系起来,从而完成具体的绘图工作。最后要注意释放RC和DC。 2. 编程步骤 第一步,设置开发
MFC
对话框当
中
使用View视图
最近在写一个基于
OpenGL
的程序,程序当
中
的一个模块需要在对话框上面显示三维图形。因为程序的主框架程序用的是
OpenGL
来进行三维显示,所以很直接的想到能不能够在对话框上面使用
OpenGL
显示。 我首先是按照
OpenGL
在
MFC
单文档程序当
中
的配置方式对对话框进行了类似的配置,最后得到的结果很不理想,无法实现功能。 正所谓“他山之石,可以攻玉”,遇到问题首先去查查资料,看看别人已经做过的工作
C++ 语言
64,666
社区成员
250,488
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章