Serwis Edukacyjny Nauczycieli w I-LO w Tarnowie ![]() Materiały dla uczniów liceum |
Wyjście Spis treści Wstecz Dalej
Autor artykułu: mgr Jerzy
Wałaszek |
©2023 mgr Jerzy Wałaszek
|
SDL_GetWindowWMInfo
SPIS TREŚCI |
Rozdział jest tłumaczeniem oryginalnej instrukcji dla biblioteki SDL2.
Użyj tej funkcji, aby otrzymać informacje specyficzne dla sterownika na temat okna.
SDL_bool SDL_GetWindowWMInfo(SDL_Window* window, SDL_SysWMinfo* info) |
window | okno, na temat którego zażądano informacji. |
info | struktura SDL_SysWMinfo wypełniana informacją o oknie; zobacz do Uwag. |
#include "SDL.h" #include "SDL_syswm.h" int main(int argc, char *argv[]) { SDL_Window* window; SDL_SysWMinfo info; SDL_Init(0); window = SDL_CreateWindow("", 0, 0, 0, 0, SDL_WINDOW_HIDDEN); SDL_VERSION(&info.version); /* inicjuj strukturę info informacją o wersji SDL */ if(SDL_GetWindowWMInfo(window,&info)) /* wywołanie zwraca true przy sukcesie */ { /* sukces */ const char *subsystem = "an unknown system!"; switch(info.subsystem) { case SDL_SYSWM_UNKNOWN: break; case SDL_SYSWM_WINDOWS: subsystem = "Microsoft Windows(TM)"; break; case SDL_SYSWM_X11: subsystem = "X Window System"; break; #if SDL_VERSION_ATLEAST(2, 0, 3) case SDL_SYSWM_WINRT: subsystem = "WinRT"; break; #endif case SDL_SYSWM_DIRECTFB: subsystem = "DirectFB"; break; case SDL_SYSWM_COCOA: subsystem = "Apple OS X"; break; case SDL_SYSWM_UIKIT: subsystem = "UIKit"; break; #if SDL_VERSION_ATLEAST(2, 0, 2) case SDL_SYSWM_WAYLAND: subsystem = "Wayland"; break; case SDL_SYSWM_MIR: subsystem = "Mir"; break; #endif #if SDL_VERSION_ATLEAST(2, 0, 4) case SDL_SYSWM_ANDROID: subsystem = "Android"; break; #endif #if SDL_VERSION_ATLEAST(2, 0, 5) case SDL_SYSWM_VIVANTE: subsystem = "Vivante"; break; #endif } SDL_Log("This program is running SDL version %d.%d.%d on %s", (int)info.version.major, (int)info.version.minor, (int)info.version.patch, subsystem); } else { /* wywołanie się nie powiodło */ SDL_LogError(SDL_LOG_CATEGORY_ERROR, "Couldn't get window information: %s", SDL_GetError()); } SDL_DestroyWindow(window); SDL_Quit(); return 0; } |
Struktura info musi byż zainicjowana numerem wersji SDL, a dopiero wtedy zostanie wypełniona informacją na temat danego okna, jak pokazano w Przykładowym Kodzie.
![]() |
Zespół Przedmiotowy Chemii-Fizyki-Informatyki w I Liceum Ogólnokształcącym im. Kazimierza Brodzińskiego w Tarnowie ul. Piłsudskiego 4 ©2023 mgr Jerzy Wałaszek |
Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone
pod warunkiem podania źródła oraz niepobierania za to pieniędzy.
Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl
Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.
Informacje dodatkowe.