| Startseite | Inhalt
StarBasic / OpenOffice.org Basic FAQ
Fragen und Infos: starbasic@dannenhoefer.de

Zurück Vor |
| 4.3.9 Welches sind die Besonderheiten von Listboxen?
Es folgen die Methoden und Properties die während der Laufzeit des Programms zur Verfügung stehen. Diese sind bei Listboxen viel wichtiger als bei den anderen Kontrollfeldern, weil bei Listboxen ja Informationen ausgewertet werden müssen, die der Anwender in der Listbox ausgewählt hat. additem( Item, Pos) Fügt einen Eintrag an der Position hinzu. myctrl.additem("Test",1) oder strEintrag = "Test" myctrl.additem(strEintrag,1) Additems(ItemArray,Pos) Fügt die Einträge des Array ItemArray ab der Stelle Pos in die Liste ein. Dim strEintraege(2) strEintraege(0)="Test0" strEintraege(1)="Test1" strEintraege(2)="Test2" myctrl.additems(strEintraege(),1) removeitems(Pos,Count) Entfernt die Anzahl (Count) von Einträgen ab der Position (Pos). myCtrl.removeitems(0,4) selectitem(Item,SelectMode) Setzt den Eintrag "Item", das heißt den Eintrag der dem String "Item" entspricht, auf selektiert oder nicht selektiert. Wenn der Befehl mehrmals erfolgt, werden auch mehrere markiert. Wenn der der Modus Mehrfachselektion aus ist, werden alle anderen Markierungen bei einem Klick in die Listbox gelöscht. Wenn der Eintrag "Item" nicht vorhanden ist erfolgt kein Fehler. myCtrl.SelectItem("Test2",True) itemcount Liest die Anzahl der Einträge aus. anzahl = myctrl.itemcount selecteditem Übergibt den selektierten Text in einem String. mySelect = myCtrl.SelectedItem selecteditems Übergibt, bei aktiver Mehrfachselektion, die ausgewählten Werte als ein Array von Strings. Ausgelesen werden können die Strings mit der Ubound-Funktion. Dim Ergebnis() Ergebnis = myCtrl.selecteditems for i=0 to ubound(Ergebnis()) msgbox Ergebnis(i) next i Man kann auch direkt auf dieses Array zugreifen. for i=0 to ubound(myCtrl.SelectedItems()) msgbox myctrl.selecteditems(i) next i Achtung: Nicht mit der Methode unter Model verwechseln. Model.selecteditems gibt ein Array der Positionen wieder. selectitempos(pos, selected)) Markiert einen Eintrag nach der Position. myctrl.selectitempos(2,true) selectitemspos(array,selected) Markiert mehrere Einträge nach der Position. (Nur wenn Multiselection aktiviert ist) dim selectarray(1) selectarray(0)=3 selectarray(1)=5 myctrl.selectitemspos(selectarray(),true) selecteditempos Übergibt die Position der Selektion. Position = myctrl.selecteditempos selecteditemspos Übergibt bei Mehrfachselektion die ausgewählten Position als Array.Hier wird wieder die uBound- Funktion zum Auslesen verwendet. for i=0 to ubound(myCtrl.SelectedItemspos()) msgbox myctrl.selecteditemspos(i) next i Das gleiche Ergebnis liefert Model.SelectedItems. Model.StringItemList Gibt eine Liste mit allen Einträgen zurück. Dim Ergebnis() Ergebnis() = myCtrl.model.StringItemList() for i=0 to ubound(Ergebnis()) msgbox Ergebnis(i) next i Auch auf dieses Array kann man direkt zugreifen. for i=0 to ubound(myCtrl.model.StringItemList()) msgbox myctrl.model.StringItemList(i) next i |
Seitenanfang |

2003 - 2009 von Michael Dannenhöfer |
Letzte Aktualisierung: 06.04.2009