2014-11-06 9 views
1

두 개의 창에 두 개의 창을 만들려고합니다. 하지만 두 번째 창이 전체 화면 모드로 표시되지만 첫 번째 창이 최소화되어 작업 표시 줄에서 전체 화면으로 확장해야합니다.SDL2 : 두 개의 디스플레이, 두 개의 창 및 전체 화면 모드

나는 코드 루프에서 창을 만들 :

windows_data.window = SDL_CreateWindow("Title", SDL_WINDOWPOS_CENTERED_DISPLAY(i), 
      SDL_WINDOWPOS_CENTERED_DISPLAY(i), width, height, SDL_WINDOW_FULLSCREEN_DESKTOP | SDL_WINDOW_SHOWN); 

이 플래그 SDL_WINDOW_MAXIMIZED 문제가 해결되지 않는 추가.

제 시스템은 Windows 8.1 Proffesional입니다.

답변

4

I 디버그 단계별로 및 SDL_video.c :: SDL_OnWindowFocusLost (SDL_Window * 창)

SDL_OnWindowFocusLost(SDL_Window * window) 
{ 
    if (window->gamma && _this->SetWindowGammaRamp) { 
     _this->SetWindowGammaRamp(_this, window, window->saved_gamma); 
    } 

    SDL_UpdateWindowGrab(window); 

    if (ShouldMinimizeOnFocusLoss(window)) { 
     SDL_MinimizeWindow(window); 
    } 
} 

그래서 문제가 여기에있는 이유 "만약 (ShouldMinimizeOnFocusLoss (윈도우))"를 발견했다.

SDL_SetHint(SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS, "0"); 
:

이 문제를 해결하기 위해, 나는 창을 작성하기 전에 다음 코드를 추가합니다