AfWinInputAlpha
Mit dieser Anweisung kann ein einfacher Dialog zur Benutzereingabe angezeigt werden. In (alpha1) wird der Titel des Dialogs angegeben. Dem Parameter (int2) kann der Deskriptor eines übergeordneten Fensters (üblicherweise die Variable gAfActParentDlg) oder 0 übergeben werden. Hat der Dialog kein Eltern-Objekt, kann er in den Hintergrund verschoben werden. Da der Dialog modal angezeigt wird, ist eine weitere Verarbeitung erst nach dem Schließen des Dialogs möglich. In (alpha3) muss eine Variable angegeben werden. Diese enthält nach den Schließen des Dialogs die Eingabe des Benutzers.
Über die Parameter (int4) und (int5) kann die minimale und maximale Eingabelänge definiert werden. Der Dialog kann erst dann mit der Schaltfläche [Ok] verlassen werden, wenn die minimale Anzahl von Zeichen eingegeben wurden. In das Eingabefeld können nicht mehr Zeichen eingegeben werden, als in (int5) angegeben wurden. Wird der Wert 0 übergeben (Standard), ist die Eingabelänge nicht beschränkt. Als maximale Eingabelänge sollte die Größe von (alpha3) angegeben werden, da es sonst zu einem Laufzeitfehler kommen kann, wenn mehr Zeichen eingegeben wurden, als die Variable aufnehmen kann.
In (handle6) kann der Deskriptor einer Cte-Liste übergeben werden. Das Eingabe-Objekt besitzt dann eine Auswahlliste (ComboBox), aus der das Eingabefeld gefüllt werden kann. Die Cte-Liste muss zuvor mit AfCteOpen() angelegt und mit Listenelementen (siehe (siehe CONZEPT 16 Hilfe) ) gefüllt werden. Die Namen der Listenelemente werden in der Auswahlliste angezeigt. Neben der Auswahl über die Liste kann der Benutzer noch eigene Eingaben vornehmen. Soll nur die Auswahl über die Liste zur Verfügung stehen, muss in (logic7) true übergeben werden.
Wird im Parameter (logic8) true übergeben, wird der Inhalt von (alpha3) als Vorgabewert im Eingabefeld angezeigt.
In dem angezeigten Dialog sind die Schaltflächen [Ok] und [Abbrechen] vorhanden. Beide Schaltflächen schließen den Dialog. Durch Drücken der Enter-Taste wird der Dialog mit [Ok] geschlossen. Der Rückgabewert der Funktion beinhaltet die Id der gedrückten Schaltfläche. Der Rückgabewert kann mit folgenden Konstanten verglichen werden:
_WinIdOk | [Ok] wurde gedrückt. |
_WinIdCancel | [Abbrechen] wurde gedrückt. |
Beispiel:
local { tFamilienstand : alpha(20); tErr : int; tCte : handle; } { tCte # AfCteOpen(_CteList); tCte->CteInsertItem('ledig',0,''); tCte->CteInsertItem('verheiratet',0,''); tCte->CteInsertItem('geschieden',0,''); tCte->CteInsertItem('verwitwet',0,''); tErr # AfWinInputAlpha('Familienstand',gAfActParentDlg,var tFamilienstand,0,20,tCte,true); if (tErr = _WinIdOk) { // Eingabe mit [Ok] abgeschlossen ... } tCte->AfCteCloseAll(); }