opengl对话框中messagebox等不能正常弹出解决方案

opengl对话框中messagebox等不能正常弹出
void COpenGLControl::OnPaint() 
{

 openGLDevice.makeCurrent();
 DrawGLScene();

 SwapBuffers(dc->m_hDC);

// CWnd::OnPaint();
}
按照网上的做法,程序新建了一个类,在这个类之下进行初始化之类的一些工作,然后出现了这样的问题,即MessageBox()不能正常弹出来;按一下Alt键,MessageBox()才可以弹出来。之后发现了解决问题的方法,即在最后加一个CWnd::OnPaint()函数,此时MessageBox可以正常弹出来,但是图形界面不能及时刷新。
不知道该如何解决?该加一个什么样的函数?大家没有遇到过类似的问题?

或者使用另外一种在对话框下渲染OpenGL的方法可以解决这个问题?

------解决方案--------------------
类似的问题我遇到过
不过我遇到的是去掉CWnd::OnPaint()后收不到时钟消息
加上就好了
我解释不了
但是加上CWnd::OnPaint()不应该影响刷新啊
------解决方案--------------------
探讨
引用:
类似的问题我遇到过
不过我遇到的是去掉CWnd::OnPaint()后收不到时钟消息
加上就好了
我解释不了
但是加上CWnd::OnPaint()不应该影响刷新啊


但是我的程序为什么不行啊?要么我留个邮箱?你发过来你的示例代码我试一下?
mailzhang208@sina.com
谢谢!

------解决方案--------------------
如果编译没有出错的话,说明你的程序没有执行到messagebox位置,而通过onPaint到达了执行位置,建议单步跑跑看看
------解决方案--------------------
InvalidateRect(NULL)试试。
------解决方案--------------------
编译没有出错的话,说明你的程序没有执行到messagebox位置,而通过onPaint到达了执行位置,建议单步跑,然后再用InvalidateRect(NULL)试试