Bezeichnung
ChangeDisplayMode -- wechselt zwischen Fenster- und Vollbildmodus (V4.5)
Übersicht
ChangeDisplayMode(mode[, table])
Frühere syntax
ChangeDisplayMode(mode[, width, height, table])
Beschreibung
Mit diesem Befehl kann der Anzeigemodus auf den im Parameter mode angegebenen Modus geändert werden. Dies kann einer der folgenden Modi sein:

#DISPMODE_FULLSCREEN:
Wechselt in den Vollbildmodus. Beachten Sie, dass dadurch die Auflösung des Monitors umgeschaltet wird, was möglicherweise nicht auf allen Systemen unterstützt wird. Alternativ können Sie auch #DISPMODE_FULLSCREENSCALE (siehe unten) verwenden, wodurch das Display einfach auf die Auflösung des Monitors skaliert wird. Wenn Sie #DISPMODE_FULLSCREEN verwenden, können Sie die gewünschte Bildschirmauflösung in den Tags Width und Height des optionalen Tabellenarguments übergeben (siehe unten). Wenn Sie Width und Height nicht angeben, wird automatisch die beste Bildschirmauflösung für die aktuellen Abmessungen des Displays gewählt. Ist das Display bereits im Vollbildmodus und Sie übergeben #DISPMODE_FULLSCREEN im Argument mode, kann ChangeDisplayMode() verwendet werden, um die aktuelle Bildschirmauflösung in eine andere zu wechseln.

#DISPMODE_WINDOWED:
Wechselt in den Fenstermodus. Dieser Modus kann verwendet werden, um ein Display wieder in den Fenstermodus zu schalten. Es ist natürlich nur sinnvoll, diesen Modus auf Displays zu verwenden, die derzeit im Vollbildmodus sind.

#DISPMODE_FULLSCREENSCALE:
Wechselt in den skalierten Vollbildmodus. In diesem Modus wird das Display im Vollbildmodus angezeigt, ohne die Auflösung des Monitors zu ändern. Stattdessen wird die Grafik des Displays auf die aktuelle Auflösung des Monitors skaliert. Somit füllen sie den gesamten Bildschirm aus, obwohl der Monitor seine Auflösung nicht geändert hat. Standardmäßig wird die Autoskalierung von Hollywood für die Skalierung verwendet, aber Sie können den Tag LayerScale im optionalen Tabellenargument (siehe unten) auf True setzen, um stattdessen die Ebenenskalierung zu verwenden. Siehe Skalierungssysteme für Details. Beachten Sie jedoch, dass #DISPMODE_FULLSCREENSCALE auf Plattformen, die keine hardwarebeschleunigte Skalierung unterstützen, ziemlich langsam werden kann. (V9.0)

#DISPMODE_MODESWITCH:
Dies schaltet zwischen den Display-Modi um. Wenn das Display derzeit im Fenstermodus ist, wechselt es zum Vollbild. Wenn das Display hingegen derzeit im Vollbildmodus angezeigt wird, schaltet es in den Fenstermodus um. Beachten Sie, dass der von #DISPMODE_MODESWITCH gewählte Vollbildmodus sowohl #DISPMODE_FULLSCREEN als auch #DISPMODE_FULLSCREENSCALE sein kann. #DISPMODE_MODESWITCH verwendet dieselbe Logik wie das Tastaturkürzel ALT+RETURN, der ein Hollywood-Display zwischen Vollbild- und Fenstermodus umschaltet. Weitere Informationen finden Sie in der Dokumentation zum Tag ScaleSwitch in der Dokumentation der Präprozessor-Anweisung @DISPLAY. Siehe DISPLAY für Details. (V9.0)

Ab Hollywood 6.0 können Sie ChangeDisplayMode() eine optionale Tabelle übergeben, womit Sie folgende Optionen konfigurieren können:

Height:
Wenn mode #DISPMODE_FULLSCREEN ist, kann dieser Tag verwendet werden, um die Höhe der Auflösung anzugeben, auf die der Monitor umgeschaltet werden soll. Sie können hier auch die spezielle Konstante #NATIVE übergeben, um anzugeben, dass Hollywood die native Höhe des Monitors verwenden soll.

LayerScale:
Wenn mode #DISPMODE_FULLSCREENSCALE ist, kann dieser Tag verwendet werden, damit Hollywood die Ebenenskalierung anstelle der Autoskalierung verwendet. Siehe Skalierungssysteme für Details. Voreingestellt ist False. (V9.0)

KeepProportions:
Wenn mode #DISPMODE_FULLSCREENSCALE ist, können Sie die proportionale Skalierung aktivieren, indem Sie diesen Tag auf True setzen. Die Voreinstellung ist False. (V9.0)

SmoothScale:
Wenn mode #DISPMODE_FULLSCREENSCALE ist, können Sie die interpolierte Skalierung aktivieren, indem Sie diesen Tag auf True setzen. Die Voreinstellung ist False. (V9.0)

Monitor:
Mit diesem Tag können Sie den Monitor angeben, der verwendet werden soll. Die Monitore werden von 1 an gezählt, das ist der primäre Monitor. Standardmäßig wird der Monitor verwendet, der momentan als aktives Display zugeordnet ist.

Backfill:
Dieser Tag kann die Hintergrundfüllung für dieses Display konfigurieren. Die Tabelle, die Sie hier angeben müssen, ist dieselbe, wie sein Pendant des Tags Backfill von der Präprozessor-Anweisung @DISPLAY. Siehe DISPLAY für Details.

Beachten Sie, dass es ab Hollywood 6.0 möglich ist, mehr als ein Display im Vollbildmodus zu haben, da Hollywood 6.0 die Unterstützung für mehrere Monitore einführt. Dadurch ist es möglich, mehrere Displays im Vollbildmodus auf separaten Bildschirmen laufen zu lassen.

Um herauszufinden, ob der gewünschte Display-Modus vom aktuellen Monitor verarbeitet werden kann, verwenden Sie den Befehl GetDisplayModes().

Eingaben
mode
Modus zum Umschalten (siehe oben)
table
optional: Tabelle für weitere Optionen (siehe oben) (V6.0)
Beispiel
ChangeDisplayMode(#DISPMODE_FULLSCREEN, {Width = 1024, Height = 768})
NPrint("We are now in full screen mode. Press left mouse to return\n" ..
   "to windowed mode.")
WaitLeftMouse
ChangeDisplayMode(#DISPMODE_WINDOWED)
NPrint("We are back in windowed mode now.")
WaitLeftMouse
Der obige Code geht in 1024x768 Vollbildmodus, wartet, bis die linke Maustaste gedrückt wird und wechselt wieder zurück in den Fenstermodus.

Navigation zeigen