XOpenDisplay

Aus DGL Wiki
Version vom 12. August 2008, 22:37 Uhr von Thoronador (Diskussion | Beiträge) (Wertrückgaben ergänzt.)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

XOpenDisplay

Name

XOpenDisplay - stellt eine Verbindung zum X-Server her.


Delphi-Spezifikation

function XOpenDisplay(display_name: PChar): PDisplay;


Parameter

display_name Gibt den Anzeigenamen an, welcher die zu verwendende Anzeige und die Kommunikationsdomäne angibt. Auf einem POSIX-konformen Sytem wird der Wert der Umgebungsvariable DISPLAY genutzt, falls display_name nil ist.


Beschreibung

Die Funktion XOpenDisplay gibt den Zeiger auf eine Display-Struktur zurück, welche als Verbindung zum X-Server dient und alle Informationen über diesen X-Server enthält. XOpenDisplay verbindet eine Anwendung durch TCP- oder DECnet-Protokolle, oder durch ein lokales Protokoll zur Kommunikation zwischen Prozessen, zum X-Server.

Die Kodierung und Interpretation des Anzeigenamens ist implementationsabhängig. Auf POSIX-konformen System kann der Anzeigename oder die Umgebungsvariable DISPLAY eine Zeichenkette im folgenden Format sein:

hostname:number.screen_number
hostname Gibt den Namen der Hostmaschine an, an welche die Anzeige physikalisch angeschlossen ist. Auf den Hostnamen folgt entweder ein einfacher Doppelpunkt (:) oder ein doppelte Doppelpunkt (::).
number Gibt die Nummer der Anzeige auf der Hostmaschine an. Auf diese Anzeigenummer kann optional ein Punkt (.) folgen. Eine einzelne CPU kann mehr als eine Anzeige haben. Mehrere Anzeigen werden gewöhnlich von null an beginnend durchnummeriert.
screen_number Gibt den zu nutzenden Bildschirm an. Mehrere Bildschirme können durch einen einzelnen X-Server gesteuert werden. Der angegebene Wert setzt eine interne Variable, die mit Hilfe der Funktion XDefaultScreen abgefragt werden kann.

Folgendes Beispiel würde den Bildschirm 1 der Anzeige 0 auf der Maschine namens "dual-headed" angeben:

dual-headed:0.1

Wenn der Hostname ein Name eine Hostmaschine ist und ein einfacher Doppelpunkt (:) den Hostnamen und die Anzeigenummer trennt, dann nutzt XOpenDisplay TCP-Streams für die Verbindung. Falls der Hostname nicht angegeben ist, nutzt Xlib die Verbindungsmöglichkeit, von der es glaubt, dass es die schnellste ist. Wenn der Hostname ein Name eine Hostmaschine ist und ein doppelter Doppelpunkt (::) den Hostnamen und die Anzeigenummer trennt, dann nutzt XOpenDisplay DECnet für die Verbindung. Ein einzelner X-Server kann nur einige oder auch alle dieser Transportmechanismen gleichzeitig unterstützen. Eine bestimmte Xlib-Implementierung kann ggf. sogar noch mehr Transportmechanismen unterstützen.

Falls die Funktion erfolgreich ausgeführt wurde, gibt XOpenDisplay einen Zeiger auf eine Display-Struktur zurück, welche in <X11/Xlib.h> definiert ist. Falls XOpenDisplay fehlschägt, wird nil zurückgegeben. Nach einem erfolgreichen Aufruf von XOpenDisplay können alle Bildschirme der angegebenen Anzeige vom Klienten genutzt werden. Die Bildschirmnummer, welche im Parameter display_name angegeben wurde, kann durch die Funktion XDefaultScreen ermittelt werden. Auf die Elemente von Display- und Screen-Strukturen kann nur mit Hilfe der entsprechenden Macros oder Funktionen zugegriffen werden.


Fehlermeldungen

Falls die Funktion fehlschlägt, wird nil zurückgegeben.


Zugehörige Wertrückgaben

XDefaultScreen gibt die angegebene Bildschirmnummer zurück.

XDisplayString liefert zu einem späteren Zeitpunkt die komplette Zeichenkette display_name zurück.


Siehe auch

XCloseDisplay, XFlush, XSetCloseDownMode