一个对话框,上面什么都没有,我想像GDI+那样直接在上面画东西,试了很久都没有试出来,才入手,很别扭
现在已经可以加SwapBuffers在Dialog里面黑屏了,现在就是需要在上面画图,先定义了几个画图类,然后通过drawGraphic()函数在Dialog上绘制出画图类的图形,大致代码如下:drawGraphic()函数:
{
SetupPixelFormat(m_hDC);
m_hRC = wglCreateContext(m_hDC);
wglMakeCurrent (m_hDC, m_hRC); //这里我想我已经得到绘制环境了,因为如果后面加SwapBuffers函数调用后会黑屏
以下代码是初始化,我从别处拷的,不知道这样行不行
::glMatrixMode(GL_PROJECTION);
::glLoadIdentity();
::gluOrtho2D(-10.0f, 10.0f, -10.0f, 10.0f);
::glMatrixMode(GL_MODELVIEW);
::glLoadIdentity();
::glClearColor(0.0f,0.0f,0.0f,0.0f);
::glClearDepth(1.0f);
::glEnable(GL_LINE_SMOOTH);
::glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
->循环调用每个画图类的draw()函数以画出图形
现在已经可以加SwapBuffers在Dialog里面黑屏了,现在就是需要在上面画图,先定义了几个画图类,然后通过drawGraphic()函数在Dialog上绘制出画图类的图形,大致代码如下:drawGraphic()函数:
{
SetupPixelFormat(m_hDC);
m_hRC = wglCreateContext(m_hDC);
wglMakeCurrent (m_hDC, m_hRC); //这里我想我已经得到绘制环境了,因为如果后面加SwapBuffers函数调用后会黑屏
以下代码是初始化,我从别处拷的,不知道这样行不行
::glMatrixMode(GL_PROJECTION);
::glLoadIdentity();
::gluOrtho2D(-10.0f, 10.0f, -10.0f, 10.0f);
::glMatrixMode(GL_MODELVIEW);
::glLoadIdentity();
::glClearColor(0.0f,0.0f,0.0f,0.0f);
::glClearDepth(1.0f);
::glEnable(GL_LINE_SMOOTH);
::glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
->循环调用每个画图类的draw()函数以画出图形
解决方案 »
- 我安装了瑞星杀毒软件后,先启动它,我的一个系统软件就无法启动,如果不启动它就可以启动我的一个系统软件,why?
- 关于工具提示的问题
- 如何判断某一serivice有没有启动,或者如何设置某一serivice为AutoStart?
- upd收不到包,抓包程序却能抓到?
- 在线等待中问题,一定给分:CreateProcess的参数STARTUPINFO结构中,HANDLE hStdInput在什么时候用?
- 请问:如果要搞明白网络游戏外挂的做法,应该学什么语言?
- 在VC中怎样使用延时函数?
- 为什么我的button消失了? 问题可能出在onsize里,前辈请进。
- 如何使CListCtrl的每一个item都用不同的颜色来表示
- panda_w(好想睡啊!)和liuqiannan(二迷糊)请进来拿分!
- vs2008打开.sln文件启动测试、开始执行一直变灰无法调试程序
- 导入3ds文件,并显示
看看这个是否有帮助