关于MFC下的opengl绘图

关于MFC下的opengl绘图,第1张

改变参数以后添加Invalidate();

该函数的作用是使整个窗口客户区无效。窗口的客户区无效意味着需要重绘

Invalidate()会给窗口触发一条WM_PAINT消息,然后MFC中就会响应OnDraw()。

不推荐使用CView,因为你CView的实现在一定程度上较多的依赖DocView的实现方式,若你对MFC中这部分实现不熟悉,会给你之后的编码带来一定的困难。

建议直接创建一个CWnd的派生一个类CYourWnd。在该派生类中的OnPaint中编写绘图代码。在对话框中添加该CYourWnd类实例,然后在你所说的按钮事件响应函数中创建窗口(Create)即可。绘制所需的参数可以通过指针或者其它传值方式处理。

onDraw是在文档document更新之后调用的方法,你可以设计一个线段的类,定义一个对像在document中,你在onDraw中通过document对象得到线段对象,然后将它画出,而在view中设计对话框得到线段长度, 数据写入 document对象中,然后调用update,validate 之类的方法,我有段时间不用了,记不太清了这种方法比较规范便于你以后把线段的数据存档其实如果只是想画出来,在onDraw或onPaint中放个静态变量就行flag之类的东西都可以的

关于学习MFC你应好好考虑一下,现在net功能更大一些如果你C++好的话,深入浅出mfc会比较好还有要说的想学好mfc应了解点win32编程的知识,许多人用mfc用不好,不全是因为对mfc不了解,而是对windows程序开发不了解

ondraw函数是用于重绘的,可以在其中绘图,但是不建议这样做,因为拖动或者更改窗体尺寸还有很多情况下会触发重绘时间,这样就会造成严重闪烁

最好是内存中建一个图像,所有要画的东西实现计算好后画在这个图像上,再在ondraw里面直接刷新这个图像

以上就是关于关于MFC下的opengl绘图全部的内容,包括:关于MFC下的opengl绘图、求助:使用MFC编程实现输入、计算、画图、关于MFC单文档画图等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/10118649.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存