Hi,
hat jemand eine Ahnung, wie man herausbekommen kann, wie groß der aktuelle Bildschirm unter GEOS ist? Bei 800x600 passen bestimmte Dialoge nicht auf den Schirm, so das ich sie abwandeln muss.
LG
Rainer
Hi,
hat jemand eine Ahnung, wie man herausbekommen kann, wie groß der aktuelle Bildschirm unter GEOS ist? Bei 800x600 passen bestimmte Dialoge nicht auf den Schirm, so das ich sie abwandeln muss.
LG
Rainer
Hallo Rainer
Im GeoLadder verwendet ich folgendes:
// Get the video resolution
@call application::MSG_GEN_GUP_QUERY(&grp, GUQT_FIELD);
WinGetWinScreenBounds(grp.GRP_bp, &g.ns.screen);
Gruss
Andreas
Supi, das klingt doch nach nem Plan.
Die Schreensaver scheinen die Bounds als Instancevariable SAI_bounds der SaverAplicationClass schon direkt zu bekommen. Aber da kann man sicher noch mal graben, wenn das oben nicht gehen sollte.
Rainer
Wenn ich mich recht erinnere, kann man entweder die Application oder direkt den VideoTreiber befragen. beim Screensaver macht definitiv Sinn
Theoretisch kann man auch die GEOS.INI befragen. Aber die Einträge sind sprachabhängig.
Das hilft dir leider auch nicht, da einige Grafikmodi z.B. einfach nur „Simple 4-Bit Greyscale Driver“ heißen und gar keine Größenangaben enthalten. Mal davon abgesehen, dass du dann in der Geos.ini auch noch nachschauen müsstest, ob der Nutzer die maximal nutzbaren Pixel noch weiter eingeschränkt hat (Zoomer-Emulator, 16:9 mit einem 4:3 Treiber etc.).