|
01.11.2009
Listbox füllen
Für dieses Beispiel benötigen Sie die Beispiel-Datenbank FAHRZEUGE und das Projekt fahrzeuge.xdev.
Listboxen dienen zur Auswahl von Einträgen einer Liste. Die Einträge der Listbox können entweder bereits im Entwurf statisch festgelegt werden, oder man lässt die Listbox erst während der Laufzeit mit Informationen aus einer Datenbank-, bzw. Virtuellen Tabelle dynamisch füllen.
Listbox:

|
Interne Werte-Verwaltung einer Listbox:

|
Sichtbar sind nur die Werte der Werte-Spalte.
|
Jeder sichtbare Eintrag in der Listbox besitzt eine nicht sichtbare Daten-Spalte, die i.d.R. zur Speicherung der Datensatz-ID verwendet wird. Beim speichern der Auswahl wird immer nur die Datensatz-ID gespeichert. Darüber hinaus besitzt jeder Eintrag einen Index, der bei 0 beginnt und immer lückenlos geführt wird.
|
» Listbox-Einträge besitzen einen Zusatzwert für die ID «
Jeder Listbox-Eintrag setzt sich aus dem sichtbaren Listbox-Eintrag und einem internen Zusatzwert zusammen, in der die Datensatz-ID des Listbox-Eintrages abgespeichert werden kann. Dies ist unerlässlich, da beim Speichern der selektierten Einträge lediglich deren ID in der Datenbank-Tabelle abgespeichert werden.
Für das Füllen und Auslesen der Liste einer Listbox stehen Ihnen verschiedene Methoden zur Verfügung.
Die wichtigsten Listbox-Methoden:
Methode
|
Erklärung
|
Listbox füllen
|
fillFromVT (VirtualTable vt, String itemCol, String dataCol) | XDEV NLS: fülleAusVT (Virtuelle Tabelle vt, Zeichenkette spalteFürAnzeige, Zeichenkette spalteFürDaten)
Überträgt alle Daten der Virtuellen Tabelle in die Listbox. Mit String itemCol | XDEV NLS: fülleAusVT (Virtuelle Tabelle vt, Zeichenkette spalteFürAnzeige, Zeichenkette spalteFürDaten) legen Sie fest, aus welcher Spalte die Listen-Einträge ausgelesen werden und mit String dataCol | XDEV NLS: fülleAusVT (Virtuelle Tabelle vt, Zeichenkette spalteFürAnzeige, Zeichenkette spalteFürDaten) geben Sie an, in welcher Spalte die IDs der Listen-Einträge stehen. Die Methode finden Sie in der Bibliothek bei den Listbox-Methoden ganz unten bei XdevItemList listItems | XDEV NLS: XdevLeistEinträge listenEinträge.
|
Eintrag hinzufügen
|
addRow (String item, Mixed data) | XDEV NLS: zeileHinzufügen (Zeichenkette anzeige, Verschiedenes daten)
Fügt einen neuen Eintrag am Ende der Liste ein.
Mit String itemCol | XDEV NLS: fülleAusVT (Virtuelle Tabelle vt, Zeichenkette spalteFürAnzeige, Zeichenkette spalteFürDaten) geben Sie den Listen-Eintrag an. Mit Mixed data | XDEV NLS: Verschiedenes daten geben Sie die ID des Listen-Eintrages an. Beide Parameter sind häufig Methoden, welche die jeweiligen Werte aus einer anderen List- oder Combobox oder aus einer Virtuellen Tabelle auslesen.
|
Anzahl der Einträge
|
getSize ( ) Int | XDEV NLS: anzahlEinträge ( ) Ganzzahl
Gibt die Anzahl der Listen-Einträge als Ganzzahl (Integer) zurück.
|
Selektierte Zeile ermitteln
|
getSelectedIndex ( ) Int | XDEV NLS: selektierteZeile ( ) Ganzzahl
Gibt den Index der selektierten Zeile als Ganzzahl (Integer) zurück.
|
ID des Eintrages ermitteln
|
getData (Int index) | XDEV NLS: holeWert (Ganzzahl index)
Liefert den Wert der Zusatzdaten eines Eintrages, i.d.R. die ID des Eintrages.
|
Eintrag löschen
|
romoveRow (Int Index) | XDEV NLS: zeileLöschen (Ganzzahl Index)
Entfernt einen Eintrag aus der Liste. Mit Index geben Sie an, welcher Eintrag entfernt werden soll Der Index beginnt bei 0.
|
Tipp: Die Listbox unterstützt auch Mehrfachauswahl. Mit gedrückter Shift- oder Strg-Taste lassen sich auch mehrerer Einträge gleichzeitig selektieren.
|
|