SDL 1.3 kullanımı Linux altında sahte tam ekran SDL_Window oluşturmak istiyorum. Tek bir ekranım varsa bu çok kolay. Sadece mevcut ekran modunu aldım ve bir pencere oluşturdum.SDL sahte tam ekran modu linux altında çift monitörde kurulum
SDL_GetDesktopDisplayMode(0, &mode);
SDL_Window *win = SDL_CreateWindow("my window",
0,0,mode.w, mode.h,
SDL_WINDOW_OPENGL | SDL_WINDOW_SHOWN | SDL_WINDOW_BORDERLESS);
Ancak iki ekranım olduğunda, işler karmaşıklaşır. Pencere birden çok monitörde yayılır. SDL sadece bir, çift boyutlu sanal ekran görür.
ben bu kod ile testint num = SDL_GetNumVideoDisplays();
for(int i=0; i < num; i++)
{
SDL_Rect displayRect;
SDL_GetDisplayBounds(i, &displayRect);
std::cout
<< "display " << i << ": x,y,w,h("
<< displayRect.x << ", "
<< displayRect.y << ", "
<< displayRect.w << ", "
<< displayRect.h << ")"
<< std::endl;
}
çıkışı:
display 0: x,y,w,h(0, 0, 2960, 1050)
Ama iki ekranı (1680x1050 ve 1280x1024) var.
Pencerenin yalnızca bir tanesi (ana ekran) üzerinde kalması nasıl zorlanır?
1 İlginç. Bu işletim sisteminin bir seçim gibi görünüyor ve ben bu konuda bir şey yapabilir emin değilim – karlphillip
Multimonitor için hangi özel yöntemi kullanıyorsunuz? Xinerama? Xrandr? Nvidia twinview? Xorg.conf dosyanızdaki ayrı ekran hataları? – genpfault
@ genpfault: Varsayılan ayarlarda fedora 15 kullanıyorum (gnome-shell ile). xrandr muhtemelen (henüz bir linux uzmanı değilim), ama diğer makinelerde de çalışmalı – Frizi