FreeBasic: Screen,Screenlock, Screenunlock


Screen Bearbeiten

Die schwarzen Dos-Fenster waren doch lustig oder? Weißt du was noch lustiger ist? Ein Grafikfenster. Es wird so geöffnet:

screen 19, 32

oder alternativ:

screenres 800, 600, 32

Es wird ein weißes Fenster geöffnet. Die erste Zahl bzw. die ersten beiden bei Screenres geben die größe des Fensters an. Bei Screenres sind es Länge und Breite. Die zweite/dritte Zahl ist die Farbtiefe. Bei Screen ist der erste Parameter einer der folgenden:

Nummer Größe und Farbtiefe
0 Konsolenfenster, 16 Farben für Vorder- und Hintergrund.
1 320x200, gleichzeitig 2 Farben aus der Standardpalette.
2 640x200, gleichzeitig 16 Farben aus der Standardpalette.
7 320x200, gleichzeitig 16 Farben aus der Standardpalette.
8 640x200, gleichzeitig 16 Farben aus der Standardpalette.
9 640x350, gleichzeitig 2 24Bit Farben.
11 640x480, gleichzeitig 16 24Bit Farben.
12 640x480, gleichzeitig 256 24Bit Farben.
13 320x200, gleichzeitig 256 24Bit Farben oder 32Bit.
14 320x240, gleichzeitig 256 24Bit Farben oder 32Bit.
15 400x300, gleichzeitig 256 24Bit Farben oder 32Bit.
16 512x384, gleichzeitig 256 24Bit Farben oder 32Bit.
17 640x400, gleichzeitig 256 24Bit Farben oder 32Bit.
18 640x480, gleichzeitig 256 24Bit Farben oder 32Bit.
19 800x600, gleichzeitig 256 24Bit Farben oder 32Bit.
20 1024x768, gleichzeitig 256 24Bit Farben oder 32Bit.
21 1280x1024, gleichzeitig 256 24Bit Farben oder 32Bit.

Screenlock und Screenunlock Bearbeiten

Wenn man in einer Schleife etwas zeichnet werden einem Verzerreffekte auffallen. Da das nicht schön aussieht sperrt man den Bildschrim mit Screenlock vorher. Sobald man den Bildschirm mit Screenunlock wieder entsperrt werden alle zwischen den beiden gemachten Änderungen beim nächsten Monitor Rücklauf gezeichnet. Der Effekt entsteht, weil der Monitor sich mit einer anderen Frequenz aktualisiert wie das Fenster zeichnet.

Andere Befehle mit Screen Bearbeiten

Der nächst wichtigste Befehl mit Screen ist Screeninfo. Mit Screeninfo kann man viele Informationen über den aktuellen Fenstermodus erfahren.

dim as integer breite, hoehe, depth, framerate
dim as string treiber
screen 19,32
screeninfo breite,hoehe, depth,,,framerate,treiber
print str(breite)
print str(hoehe)
print str(depth)
print str(framerate)
print treiber
sleep

So kannst du wichtige Informationen wie die Fenstergröße ermitteln. Ein weiterer wichtiger Befehl mit Screen ist Screensync. Beim Aufruf von Screensync wird gewartet bis zum nächsten Bild aktuallisieren. So können Flimmereffekte vermieden werden. Es gibt noch mehr solcher Befehle für Screen-Fenster aber die interessieren uns hier noch nicht.