Dialogobjekt Listfeld
Dialogobjekt Listfeld
Das Listfeld stellt eine Liste von Werten zur Auswahl oder Anzeige dar. Es hat i.d.R. mehrere Zeilen und ist nicht editierbar. Durch Anklicken einer Zeile wird abhängig vom Datentyp des Feldparameters entweder direkt der Text aus dem Listfeld oder aber die laufende Nummer der gewählten Zeile dem Feldparameter zugewiesen.
Ein Listfeld wird für die folgende Anwendung eingesetzt:
·als Daten-Auswahlfeld. Wie beim Kombinationsfeld wird ein Element aus einer Werteliste (statisch dem Dialog zugeordnet oder dynamisch über die Datenquelle) ausgewählt. Der Unterschied zum Kombinationsfeld besteht hierbei darin, dass eine freie Werteeingabe nicht möglich ist, und dass alle (oder die meisten) Wertealternativen sichtbar sind, ohne erst die Liste „aufklappen" zu müssen. Die gewählte Alternative wird markiert dargestellt. Gewöhnlich wird die markierte Zeile als Text an den Zielparameter übergeben. Ist der Wertevorrat fest, so kann statt des Listfeldes auch das Dialogobjekt Alternativschalter (Optionsfeld) verwendet werden.
Soll ein Listfeld mehrere Spalten enthalten, z.B. zur Darstellung einer ganzen Parametergruppe, kann auch eine Tabelle verwendet werden.
Das Listfeld lässt sich jeweils nur um ganze Zeilen vergrößern. Deshalb scheint es beim Ziehen mit der Maus etwas zu „springen". Sind zur Laufzeit mehr Werte vorhanden als es Zeilen im Listfeld gibt, so wird automatisch ein vertikaler Rollbalken ergänzt. Kann eine Zeile nicht vollständig dargestellt werden, erscheint automatisch ein horizontaler Rollbalken.
Wenn der Zielparameter vom Datentyp Dezimal ist und der Wertevorrat durch einen Parameter gegeben ist, wird für die Darstellung der Werte das für den Zielparameter in der Parametertabelle eingestellte Format verwendet.
Ein Listfeld besitzt neben den allgemeinen Eigenschaften Allgemeine Eigenschaften der Dialogelemente folgende Eigenschaften:

(Ziel-)Parameter | Parametername des Parameters, der dem Feld zugeordnet ist (der die Selektion enthält). Hat dieser Parameter bei der Ausführung vor Aufruf des Dialoges einen Wert, so wird die entsprechende Zeile im Listfeld markiert dargestellt. Wird kein Wert ausgewählt, so ist der Parameter nach Abschluss der Maske im Zustand LEER. Das Setzen und auch die Rückgabe der markierten Zeile erfolgt abhängig vom Datentyp des Rückgabeparameters. Ist der Parameter eine Zeichenkette, wird der Inhalt der markierten Zeile zurückgegeben. Die Zeile muss dann eindeutig sein. Der Datentyp Dezimal verhält sich ähnlich, für die Darstellung der Werteliste wird die PT-Formatierung berücksichtigt. In der Werteliste ist als zusätzliche Sprache die Sprache „CODE" enthalten. Der Wert dieser Spalte wird auf den Parameter geschrieben, um eine sprachenabhängige Belegung des Parameters zu erreichen. Der sichtbare Wert des gewählten Eintrags wird auf „Parameter (sichtbarer Text) eingetragen. Allerdings ist in der ET häufig nicht die dargestellte Zeile interessant, sondern der Index in der zugrunde liegenden Datenquelle, z.B. bei der Auswahl eines ganzen Datensatzes. Dazu kann als Rückgabewert eine Ganzzahl verwendet werden. Dann wird statt der Listenzeile der Zeilenindex in der Datenquelle zurückgegeben. |
Parameter (sichtbarer Text) | Name des Parameters, auf den der sichtbare Text geschrieben wird. Dieser Parameter muss nicht angegeben werden. |
Art der Quelle | Auswahl, ob eine feste Werteliste oder ein indizierter Parameter als Quelle verwendet werden soll. |
QuellParameter | Parameter, der den Wertevorrat des Listfeldes enthält. Dieser Parameter muss 1-fach indiziert sein, und zwar entweder in der Parametergruppe oder im Parameter .Für eine mehrsprachige Verwendung der Listbox kann ein weiterer 1-fach indizierter Parameter für die Liste der sichtbaren Texte eingetragen werden. In diesem Fall wird die Liste des Parameters (sichtbarer Text) dargestellt, aber der Inhalt des 1. Parameters zurückgegeben. Die Belegung der beiden Felder sollte bis zum selben Index erfolgen, da ansonsten keine sinnvolle Verarbeitung möglich ist. Wenn das Feld mit den sichtbaren Texten größer ist, als das Feld mit den Rückgabewerten, kann bei der Auswahl eines solchen Index kein Rückgabewert bestimmt werden. Bitte beachten: Die Auswahl zwischen der dynamischen Datenquelle und der Werteliste wird mit dem Optionsfeld zur Linken festgelegt. |
Quelle: sichtbarer Text | Parameter, der den darzustellenden Text des Listfeldes enthält. Dieser Parameter muss genauso indiziert sein, wie der Quellparameter. |
Werteliste | Fester Wertevorrat, der am Dialog selbst hinterlegt ist. Nach Anwahl der Schaltfläche erscheint ein Fenster, in dem die Werteliste bearbeitet werden kann. Die Werte werden als Tabelle zur Bearbeitung dargestellt. Je Zeile wird ein Wert in allen definierten Sprachen des Dialogs plus der Sprache CODE erfasst. Mit den Pfeil-Tasten neben dem Text „Umstellen" kann die Reihenfolge der Zeilen geändert werden. Wenn eine Zeile durch Selektion der Schaltfläche am linken Rand ausgewählt wurde, kann durch die Löschtaste die ganze Zeile gelöscht werden. Wird dieselbe Werteliste häufiger benötigt, so sollte statt dessen besser die Datenquelle (s.o.) verwendet werden, damit Änderungen nur einmalig durchgeführt werden müssen. |
Überprüfung | Durch Anschalten der Überprüfung kann während der Ausführung dieses Dialoges direkt auf Änderungen der Auswahl in diesem Listfeld reagiert werden. Dies kann zum Überprüfen der Auswahl wie auch zum Setzen von Vorschlagswerten für andere Dialogfelder genutzt werden. Diese Überprüfung überwacht Benutzereingaben in dieser Listbox. Wenn die Werteliste dynamisch geändert werden soll, muss die Überprüfung bei demjenigen Feld angeschaltet werden, dessen Wert-Änderung die Änderung dieser Werteliste auslöst. |
Doppelklick-ET | Entscheidungstabelle, die bei einem Doppelklick gerufen wird. |
Tiptext | Mehrsprachiges zuordnen eines Tiptextes. |
Dem Listfeld muss unbedingt ein Parameter zugeordnet werden. Ansonsten erscheint beim Speichern des Dialogs eine Fehlermeldung.
Beispiel einer Werteliste:
