这是我为程序创建菜单的代码:
WNDCLASS wc;
...
hInstance = GetModuleHandle(NULL);
wc.style = CS_HREDRAW | CS_VREDRAW | CS_OWNDC;
wc.lpfnWndProc = (WNDPROC) WndProc;
wc.hInstance = hInstance;
...
if(!RegisterClass(&wc)) ...
现在,如果我打开菜单,我的程序将暂停,直到我不再使用菜单,我怎么做,所以即使我使用菜单,我的窗口仍将继续渲染?我正在使用OpenGL窗口,如果这很重要。
请注意,菜单应该像使用此代码一样呈现(因此它不会将菜单渲染到我的opengl渲染区域,而是为其自己的区域占用空间。
答案 0 :(得分:3)
您需要在单独的线程中进行渲染 - 弹出菜单将始终停止单线程Windows应用程序。