Eine Vorlage für den Befehl ZocDialog bezeichnet eine Textdatei, welche eine Liste und Beschreibung aller Elemente, die im Dialogfenster erscheinen sollen, enthält.
Das grundsätzliche Format eines Dialog-Vorlagen Eintrages ist
<typ> <element-id> = "<text>", <wert1>, <wert2>[, <wert3>[, <>wert4>]]
z.B.
DIALOG IDDLG0 = "Bitte Benutzernamen eingeben", 260,260
Der typ eines Eintrages wird durch das erste Wort dieses Eintrags in Großschreibung bestimmt. Die element-id ist ein vom Benutzer definierter Text, der dazu verwendet werden kann, nach Schließen des Dialogs den Wert des entsprechenden Elements abzufragen (z.B. um dann die Eingabe des Benutzers aus einem Textfeld auszulesen). Der Wert von text hängt vom Typ des Elements ab und enthält üblicherweise entweder die Bezeichnung oder den Inhalt des Elements. Abhängig vom Typ des Elements geben wert1/wert2 entweder die x/y-Koordinate innerhalb des Fensters oder dessen Größe an. Die Werte wert3/wert4 bestimmen die Größe (Breite/Höhe) derjenigen Elemente, für die wert1/wert2 zur Angabe der Position verwendet wird. Wird für Breite und Höhe kein Wert angegeben, erhält das Element eine Standardgröße.
Der Interpreter für obige Befehle ist sehr einfach gehalten und nicht fehlertolerant. Bitte treffen Sie keine Annahmen über mögliche andere Schreibweisen, die über die hier beschriebenen Beispiele hinausgehen, und nehmen Sie sich keine syntaktischen Freiheiten. Nur ein Dialog-Element pro Zeile ist zulässig. Zeilen, die mit // oder -- oder # beginnen, werden als Kommentarzeile behandelt. Leerzeilen sind erlaubt.
Liste der Möglichen Einträge in Dialogvorlagen:
DIALOG | |
DIALOG <element-id> = "<titel>", <breite>, <höhe> | |
STATICTEXT | |
STATICTEXT <element-id> = "<text>", <x-pos>, <y-pos>[, <breite>[, <höhe>]] | |
EDITTEXT | |
EDITTEXT <element-id> = "<inhalt>", <x-pos>, <y-pos>[, <breite>[, <höhe>]] | |
EDITPASSWORD | |
Wie EDITTEXT, jedoch wird die Eingabe nicht angezeigt.
| |
CHECKBOX | |
CHECKBOX <element-id> = "<titel>", <x-pos>, <y-pos>[, <breite>[, <höhe>]] | |
RADIOBUTTON | |
RADIOBUTTON <element-id> = "<titel>", <x-pos>, <y-pos>[, <breite>[, <höhe>]] | |
GROUPBOX | |
GROUPBOX <element-id> = "<titel>", <x-pos>, <y-pos>, <breite>, <höhe> | |
DROPDOWNLIST | |
DROPDOWNLIST <element-id> = "<inhalt>", <x-pos>, <y-pos>, <breite>, <höhe> | |
LISTBOX | |
LISTBOX <element-id> = "<inhalt>", <x-pos>, <y-pos>, <breite>, <höhe> | |
PUSHBUTTON | |
PUSHBUTTON <element-id> = "<text>", <x-pos>, <y-pos>[, <breite>[, <höhe>]] | |
DEFPUSHBUTTON | |
Identisch mit PUSHBUTTON, erstellt aber eine Schaltfläche, die als Standard-Schaltfläche markiert ist (DEFBUTTON wird üblicherweise für OK- oder Fertig-Schaltflächen verwendet). |
Beispiel: test.dlg
DIALOG MSG1 = "Einfacher Beispiel-Dialog", 260,140
STATICTEXT ST = "Glückwunsch! Dies ist Ihr erster Dialog.", 12,12, 100,60
DEFPUSHBUTTON P1 = "OK", 120,70
// Hier eine weitere Dialog-Vorlage innerhalb der gleichen Vorlage-Datei
DIALOG MAIN = "Beispiel-Dialog", 260,310
STATICTEXT ST1 = "Ihr Name", 12,12, 100
EDITTEXT ED1 = "Harry", 112,10
CHECKBOX CB1 = "Ich bin Programmierer", 14,50, 150
GROUPBOX G1 = "Lieblingsfarbe?", 12, 90, 200,90
DROPDOWNLIST DD1= "Rot|[*]Gruen|Blau", 20,115, 170,100
RADIOBUTTON RB1 = "VT220", 14,190, 80
RADIOBUTTON RB2 = "[*]Xterm", 100,190, 80
DEFPUSHBUTTON P1 = "OK", 12, 230, 80
PUSHBUTTON P2 = "Abbruch", 112, 230, 80
Beispiel: Verwendung der obigen Vorlage innerhalb eines Scripts
CALL ZocDialog "SHOW", "MSG1@test.dlg"
-- Anzeiges eines Dialogs unf Prüfung der eingegebenen Werte
dlgrc= ZocDialog("SHOW", "MAIN@test.dlg")
SAY ">"dlgrc
IF dlgrc=="##OK##" THEN DO
okpressed= ZocDialog("GET", "P1")
IF okpressed==1 THEN DO
SAY "EDITTEXT Wert: "||ZocDialog("GET", "ED1")
SAY "CHECKBOX Wert: "||ZocDialog("GET", "CB1")
SAY "DROPDOWNLIST Wert: "||ZocDialog("GET", "DD1")
END
END
← Zurück zu ANHANG