Konstante Fenstergröße
-
Hallo,
Ich hab folgendes Problem bei dem ich nicht weiter komme.
Ich hab mit winapi ein Fenster erzeugt was ohne Probleme funktioniert jetzt hab ich aber das Problem das wenn ich das Programm auf einem anderen Pc starte die Auflösung nicht mehr stimmt.
In c# weiß ich das es mit AutoScaleMode eingestellt werden kann aber in C weiß ich nicht wie ich das Problem beheben kann.
Ich hoffe ihr könnt mir weiter helfen.
Danke im voraus.MFG
jojox
-
Du kannst mit GetSystemMetrics (SM_CXSCREEN und SM_CYSCREEN) die Auflösung ermitteln und mit diesen Werten dann die Fenstergröße dynamisch berechnen.
-
Hey,
soweit ich das weiss kannst du erstmal die Fenstererstellungskonstanten CW_USEDEFAULT beim CreateWindow() einsetzen. In dem WM_CREATE zweig der Window PRocedure sollte dann MINDESTENS folgendes erscheinen:
static int cxClient , cyClient; //Höhe und Breite des Bildschirms in Pixeln /*..*/ cxClient = GetSystemMetrics(SM_CXSCREEN); //Breite, sowie cyClient = GetSystemMetrics(SM_CYSCREEN); //Höhe des Bildschirms ermitteln /*..*/ SetWindowPos ( hWnd , HWND_TOP , 0 , 0 , cxClient / 2 , 2* cyClient / 3 , SWP_SHOWWINDOW ); //Setzt das Fenster auf Pos 0,0 und macht es den halben Bildschirm breit, sowie //2/3 des Bildschirmes hoch.
http://msdn.microsoft.com/en-us/library/windows/desktop/ms633545(v=vs.85).aspx
Hoffe, ich konnte dir helfen.