gpt4 book ai didi

c++ - SDL:两个事件循环?

转载 作者:行者123 更新时间:2023-11-30 02:10:32 26 4
gpt4 key购买 nike

看看这段代码:

void game::startLoop()
{
while(QUIT == false)
{
getRoomUpdate();
applySurface(-15, 280, zombie_lefthand, buffer);
applySurface(455, 280, zombie_righthand, buffer);

SDL_Flip(buffer);

while(SDL_PollEvent(&gameEvent))
{
if(gameEvent.type == SDL_QUIT)
{
QUIT = true;
}
}

while(SDL_WaitEvent(&keyEvent))
{
switch(keyEvent.type)
{
case SDL_KEYDOWN:
switch(keyEvent.key.keysym.sym)
{
//blahkeypress
}
}
}
}
}

我正在尝试弄清楚如何在我们等待按键时允许 SDL_QUIT 工作。有没有办法做到这一点,或者你们有更好的主意吗?

我有点新手,所以请具体一点。 :D

最佳答案

名称 keyEvent 具有误导性。 SDL_WaitEvent 将等待任何类型的事件,包括 QUIT。

SDL_Event event;
SDL_WaitEvent(&event);
switch (event.type) {
case SDL_QUIT:
quit = true;
break;
/* cases for keyboard events, etc. */
}

关于c++ - SDL:两个事件循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4480643/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com