Когда я обрабатываю несколько окон SDL2, то на них не работает кнопка выхода. Использую:
SDL_Event e;
//...
SDL_CreateWindowAndRenderer(SCREEN_WIDTH,SCREEN_HEIGHT,SDL_WINDOW_BORDERLESS,&win1,&ren1);
SDL_CreateWindowAndRenderer(SCREEN_WIDTH,SCREEN_HEIGHT,SDL_WINDOW_BORDERLESS,&win2,&ren2);
SDL_CreateWindowAndRenderer(SCREEN_WIDTH,SCREEN_WIDTH,SDL_WINDOW_BORDERLESS,&ball,&renB);
SDL_CreateWindowAndRenderer(SCREEN_WIDTH,SCREEN_WIDTH,SDL_WINDOW_BORDERLESS,&ex,&renE);
SDL_CreateWindowAndRenderer(SCREEN_WIDTH*3,SCREEN_WIDTH*2,SDL_WINDOW_BORDERLESS,&score,&renC);
//...
bool run=0;
while(run){
SDL_PollEvent(&e);
if(e.type==SDL_QUIT)run=0;
}
Подскажите пожалуйста, как обрабатывать событие выхода на нескольких окнах
Открываем мануал:
An SDL_QUIT event is generated when the user clicks on the close button of the last existing window.
Это не баг, а фича.
Вам нужен SDL_WINDOWEVENT с .window.event ==SDL_WINDOWEVENT_CLOSE.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей