Как сделать меню, которое не останавливает мою программу при использовании? - PullRequest
1 голос
/ 21 мая 2011

Это мой код для создания моего меню для программы:

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, но будет занимать пространство для своей собственной области.

1 Ответ

3 голосов
/ 21 мая 2011

Вы должны выполнять рендеринг в отдельном потоке - всплывающее меню всегда останавливает однопоточное приложение Windows.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...