gpt4 book ai didi

c++ - SDL窗口不可单击(最小化和关闭按钮不起作用)

转载 作者:行者123 更新时间:2023-12-02 09:54:49 25 4
gpt4 key购买 nike

当SDL窗口打开时,我无法在窗口上单击任何内容,并且光标是蓝色的加载光标。因此,当我尝试最小化窗口时,它什么也没做。救命!

码:

#include "SDL.h"

int main(int argc, char *argv[]) {
SDL_Init(SDL_INIT_EVERYTHING);

SDL_Window *window = SDL_CreateWindow("Title",
SDL_WINDOWPOS_CENTERED,
SDL_WINDOWPOS_CENTERED,
640, 480,
SDL_WINDOW_SHOWN);

SDL_Renderer *renderer = SDL_CreateRenderer(window, -1, 0);

SDL_SetRenderDrawColor(renderer, 0, 255, 0, 255);

SDL_RenderClear(renderer);

SDL_RenderPresent(renderer);

SDL_Delay(3000);

return 0;
}

我使用MinGW编译器,我的IDE是Eclipse,SDL的版本是2.0.12。

最佳答案

SDL_Delay阻塞主线程,直到返回为止。在Windows上,应用程序的主线程应处理Windows消息并对其做出响应,以执行任何操作,否则它将被标记为“无响应”。由于线程被阻塞,因此会发生这种情况。

SDL在其事件系统中处理该事件,您应该使用一个名为SDL_PollEvent的事件循环来调用它。

关于c++ - SDL窗口不可单击(最小化和关闭按钮不起作用),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61111665/

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