Keystate 逆变器不工作
Keystate Inverter not working
我正在编写 ALT + ENTER SDL Window minimiser/maximiser,但是即使我在变量 SMax
改变后,window 仅最小化一秒钟,然后返回到原始状态。在再次按下 ALT + ENTER 之前,如何使 minimisation/maximisation 永久化?
if (keyState[SDL_SCANCODE_LALT] && keyState[SDL_SCANCODE_RETURN] && SMax)
{
SDL_SetWindowFullscreen(window, 0);
SDL_SetWindowSize(window, 600, 400);
SDL_RenderPresent(renderTarget);
w = 600;
h = 400;
SDL_Delay(1000);
SMax = false;
}
if (keyState[SDL_SCANCODE_LALT] && keyState[SDL_SCANCODE_RETURN] && !SMax)
{
SDL_SetWindowFullscreen(window, SDL_WINDOW_FULLSCREEN_DESKTOP);
SDL_RenderPresent(renderTarget);
SDL_Delay(1000);
SMax = true;
}
keyState
直到下一次调用 SDL_PumpEvents
才会更新,无论您是否让程序进入休眠状态。您需要完全跳过第二个测试,直到下一帧; else
就够了。
我正在编写 ALT + ENTER SDL Window minimiser/maximiser,但是即使我在变量 SMax
改变后,window 仅最小化一秒钟,然后返回到原始状态。在再次按下 ALT + ENTER 之前,如何使 minimisation/maximisation 永久化?
if (keyState[SDL_SCANCODE_LALT] && keyState[SDL_SCANCODE_RETURN] && SMax)
{
SDL_SetWindowFullscreen(window, 0);
SDL_SetWindowSize(window, 600, 400);
SDL_RenderPresent(renderTarget);
w = 600;
h = 400;
SDL_Delay(1000);
SMax = false;
}
if (keyState[SDL_SCANCODE_LALT] && keyState[SDL_SCANCODE_RETURN] && !SMax)
{
SDL_SetWindowFullscreen(window, SDL_WINDOW_FULLSCREEN_DESKTOP);
SDL_RenderPresent(renderTarget);
SDL_Delay(1000);
SMax = true;
}
keyState
直到下一次调用 SDL_PumpEvents
才会更新,无论您是否让程序进入休眠状态。您需要完全跳过第二个测试,直到下一帧; else
就够了。