XdevComboBox |
Anfang Zurück Vor |
Letzte Änderung 16.01.2014
Die XdevComboBox ist eine Formular-Komponente, mit der sich ein einzelner Wert aus einer Liste auswählen lässt. Die XdevComboBox setzt sich aus einem TextField, einem Button und einer ListBox zusammen, die erst durch Anklicken des Buttons eingeblendet wird. Die Liste der XdevComboBox entspricht der Formular-Komponente XdevListBox, sodass die XdevComboBox alle Eigenschaften und Funktionen der XdevListBox besitzt. Die XdevComboBox kann jedoch weitaus platzsparender eingesetzt werden und kann darüber hinaus auch editierbar sein und erlaubt dazu die direkte Eingabe eines Wertes über die Tastatur. Die Listen-Einträge einer XdevComboBox lassen sich über die Eigenschaft Einträge mit Hilfe eines Assistenten statisch festlegen oder zur Laufzeit dynamisch zugewiesen.
Um den ausgewählten Wert einer XdevComboBox abzuspeichern, muss die Komponente über die Eigenschaft Datenfeld mit der Spalte einer Virtuellen Tabelle verknüpft werden, in der die ID des ausgewählten Wertes abgespeichert wird. Die Spalte muss ein Fremdschlüssel sein.
Beim Füllen der ComboBox wird immer die itemList gefüllt. Die itemList ist das Daten-Model für die ComboBox. Sie besitzt eine Spalte für die in der ComboBox sichtbaren Einträge sowie eine zusätzliche Spalte, die jedoch unsichtbar bleibt. I.d.R. werden darin die Datensatz-IDs der ComboBox-Einträge gespeichert. Diese werden benötigt, um einen ausgewählten ComboBox-Eintrag abspeichern zu können.
Darüber hinaus besitzt die itemList einen Index der mit 0 beginnt und immer lückenlos geführt wird. Über den Index ist ein direkter Zugriff auf itemList-Einträge möglich.
●Hersteller-VT Die Daten der Virtuelle Tabelle ...
●ComboBox ItemList ... werden in die itemList der ComboBox geschrieben ...
●ComboBox Eigenschaften ... die Verknüpfung der Spalten erfolgt in den Eigenschaften der ComboBox.
Um eine ComboBox zu füllen, müssen Sie lediglich eine Virtuelle Tabelle auf die ComboBox ziehen.
1.Fügen Sie eine ComboBox in die Arbeitsfläche ein. 2.Ziehen Sie die Virtuelle Tabelle Hersteller per Drag&Drop auf die ComboBox.
In den Eigenschaften der ComboBox wird automatisch die Virtuelle Tabelle zugewiesen sowie die Spalten für die interne itemList mit den sichtbaren Einträgen für die ComboBox und deren jeweilige Datensatz-ID.
Die Einträge einer ComboBox können sich auch aus mehreren Werten zusammen. Dazu müssen Sie in den Eigenschaften bei Anzeige (Sichtbarer Eintrag) die jeweiligen VT-Spalten mit Hilfe von Textvariablen angeben, z.B. {$MODELL} {$HERSTELLER}. Über eine Liste lassen sich die Spalten benötigten Spalten auswählen, wodurch die entsprechende Textvariable automatisch generiert wird. Zwischen den Werten lassen sich beliebige Zeichen angeben, z.B. Semikolon, Komma, aber auch mehreren Wörtern, z.B. {$NAME} wohnhaft in {$ORT}.
Eine ComboBox wird i.d.R. bei der Initialisierung gefüllt. Das Füllen erfolgt mit Hilfe der Methode setModel( ). Vorausgehend muss eine Datenbankabfrage erfolgen, z.B. auf die Tabelle Hersteller.
Überträgt alle Daten der Virtuellen Tabelle in die Combobox. Mit String ItemCol legen Sie fest, aus welcher Spalte die Listen-Einträge ausgelesen werden und mit String dataCol geben Sie an, in welcher Spalte die IDs der Listen-Einträge stehen.
Wichtigste Überladungen: ●setModel(VirtualTable vt, String itemCol, String dataCol) ●vt - Die Virtuelle Tabelle, welche als Model für diese XdevComboBox genutzt werden soll. ●itemCol - Die Spalte, die zur Darstellung der Inhalte des Datensatzes genutzt wird und den sichtbaren Eintrag für die ComboBox enthält. ●dataCol - Die Datenspalte, welche zur Identifizierung des Datensatzes benötigt wird, normalerweise die Primärschlüsselspalte.
●setModel(VirtualTable vt, String itemCol, String dataCol, boolean queryData) ●vt - Die Virtuelle Tabelle, welche als Model für diese XdevComboBox genutzt werden soll. ●itemCol - Die Spalte, die zur Darstellung der Inhalte des Datensatzes genutzt wird und den sichtbaren Eintrag für die ComboBox enthält. ●dataCol - Die Datenspalte, welche zur Identifizierung des Datensatzes benötigt wird, normalerweise die Primärschlüsselspalte. ●queryData - Legt fest, ob die Daten aus der Datenbank geladen werden sollen.
Legt die ItemList fest, welche die Einträge der ComboBox enthält und löscht danach die vorherige Auswahl. Weitere Informationen zu ItemLists finden Sie in der JavaDoc. ●itemList - Die ItemList mit den Einträgen, mit denen die ComboBox gefüllt werden soll.
Gibt den Index des aktuell ausgewählten Datensatzes zurück ●Rückgabewert: Der Index des aktuell ausgewählten Datensatzes als int. Ist kein Eintrag ausgewählt, so wird -1 zurückgegeben.
Gibt die Werte des ausgewählten Datensatzes zurück. ●Rückgabewert: Der Wert des ausgewählten Datensatzes als Object. Ist kein Eintrag ausgewählt, so wird null zurückgegeben.
Gibt die Zeile der Virtuellen Tabelle zurück, welche dem ausgewählten Eintrag entspricht. ●Rückgabewert: Die aktuell ausgewählte Zeile der Virtuellen Tabelle als VirtualTableRow-Objekt. Ist kein Eintrag ausgewählt, so wird null zurückgegeben.
Gibt die Anzahl der Einträge zurück. ●Rückgabewert: Die Anzahl der Einträge in der ComboBox / ItemList als int.
Weitere Informationen zu ItemLists, wie z.B. das Hinzufügen oder löschen von Einträgen finden Sie in der JavaDoc.
|