WINAPI:我有一个简单的Win32应用程序和一个OpenGL上下文。
通过大量的实验,我在很大程度上克服了这种巨大的烦恼...
代码:
case WM_SYNCPAINT:
SetWindowPos (hwnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOOWNERZORDER |
SWP_NOMOVE | SWP_NOREDRAW | SWP_NOSIZE | SWP_HIDEWINDOW);
RedrawWindow (hwnd, NULL, 0, RDW_NOERASE );
SetWindowPos (hwnd, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOOWNERZORDER |
SWP_NOMOVE | SWP_NOSIZE | SWP_SHOWWINDOW );
break;
D)然而,它仍然是一个次优的解决方案,有一些轻微的副作用。
虽然没有直接关系,但SDL2也存在这个问题,我经常会对他们的代码进行交叉检查,看看这样的winapi消息/绘图问题,而且他们的代码库没有解决方案,我看到这个问题发布在互联网用于其他东西,如Glut等。这似乎是一个问题,即使在普通的OpenGL工具包等中也会出现问题。