Wenn ich in dem oben genannten Bespielcode anstatt " oField.Text = Ergebnis " einfach "addItem = ("" & Ergebnis & "", 2)" eingebe kommt die Fehlermeldung Eigenschaft oder Methode nicht gefunden, was wohl darauf zurückzuführen ist, dass oField nicht die Liste sondern das Feld angibt.
? Ich denke Dir liegt das StarBasic-Programmierhandbuch vor?
Dort gibt es zwar unter Forms einen Abschnitt "Accessing The View Of Control Element Forms", aber "blicken tu ichs" leider nicht.
Exakt dort steht warum das nicht geht was Du vor hast. Du kannst das mit AddItem nur auf das view und nicht auf das Model- Objekt des Steuerelements verwenden.
Hier 2 Beispielcodes aus dem Programmierhandbuch:
View-Objekt eines Steuerelements:
Code: Alles auswählen
Dim Doc As Object
Dim DocCrl As Object
Dim Forms As Object
Dim Form As Object
Dim Ctl As Object
Dim CtlView As Object
Dim I as Integer
Doc = StarDesktop.CurrentComponent
DocCrl = Doc.getCurrentControler()
Forms = Doc.Drawpage.Forms
For I = 0 To Forms.Count - 1
Form = Forms.GetbyIndex(I)
If Form.HasByName("MyListBox") Then
Ctl = Form.GetbyName("MyListBox")
CtlView = DocCrl.GetControl(Ctl)
Exit Function
End If
Next I
Model-Objekt eines Steuerelements:
Code: Alles auswählen
Dim Doc As Object
Dim Forms As Object
Dim Form As Object
Dim Ctl As Object
Dim I as Integer
Doc = StarDesktop.CurrentComponent
Forms = Doc.Drawpage.Forms
For I = 0 To Forms.Count - 1
Form = Forms.GetbyIndex(I)
If Form.HasByName("MyListBox") Then
Ctl = Form.GetbyName("MyListBox")
Exit Function
End If
Next I
Ja und nun steht im Programmierhanbuch nichts über das Kombinationsfeld, was dort über das Listenfeld steht ist aber äquivalent anwendbar:
"...
Das Model-Objekt der Formular-Listboxen hält folgende Eigenschaften bereit:
...
StringItemList (Array of Strings) – Liste sämtlicher Einträge.
...
...
Zusätzlich stehen über das View-Objekt der Listbox folgende Methoden zur Verfügung:
...
addItem (Item, Pos) – fügt die in Item angegebene Zeichenfolge an der Position Pos in die Liste ein.
addItems (ItemArray, Pos) – fügt die in dem Zeichenfolgen-Datenfeld ItemArray aufgeführten Einträge in die Liste an der Position Pos ein
...
..."
Außerdem habe ich hier eine Zusammenstellung von nützlichen Materialien ins Forum gestellt:
viewtopic.php?t=1553
Dort findet sich auch für die Combobox ein Beispiel (Überschrift "Beispieldateien" vierter Link). Außerdem nützlich das Developersguide (ebenfalls dort) und das SDK (Software Development Kit), bisher noch nicht dort, aber jetzt ergänzt.
Gruß
Stephan
[quote]Wenn ich in dem oben genannten Bespielcode anstatt " oField.Text = Ergebnis " einfach "addItem = ("" & Ergebnis & "", 2)" eingebe kommt die Fehlermeldung Eigenschaft oder Methode nicht gefunden, was wohl darauf zurückzuführen ist, dass oField nicht die Liste sondern das Feld angibt.[/quote]
? Ich denke Dir liegt das StarBasic-Programmierhandbuch vor?
[quote]Dort gibt es zwar unter Forms einen Abschnitt "Accessing The View Of Control Element Forms", aber "blicken tu ichs" leider nicht.[/quote]
Exakt dort steht warum das nicht geht was Du vor hast. Du kannst das mit AddItem nur auf das view und nicht auf das Model- Objekt des Steuerelements verwenden.
Hier 2 Beispielcodes aus dem Programmierhandbuch:
View-Objekt eines Steuerelements:
[code]Dim Doc As Object
Dim DocCrl As Object
Dim Forms As Object
Dim Form As Object
Dim Ctl As Object
Dim CtlView As Object
Dim I as Integer
Doc = StarDesktop.CurrentComponent
DocCrl = Doc.getCurrentControler()
Forms = Doc.Drawpage.Forms
For I = 0 To Forms.Count - 1
Form = Forms.GetbyIndex(I)
If Form.HasByName("MyListBox") Then
Ctl = Form.GetbyName("MyListBox")
CtlView = DocCrl.GetControl(Ctl)
Exit Function
End If
Next I[/code]
Model-Objekt eines Steuerelements:
[code]Dim Doc As Object
Dim Forms As Object
Dim Form As Object
Dim Ctl As Object
Dim I as Integer
Doc = StarDesktop.CurrentComponent
Forms = Doc.Drawpage.Forms
For I = 0 To Forms.Count - 1
Form = Forms.GetbyIndex(I)
If Form.HasByName("MyListBox") Then
Ctl = Form.GetbyName("MyListBox")
Exit Function
End If
Next I[/code]
Ja und nun steht im Programmierhanbuch nichts über das Kombinationsfeld, was dort über das Listenfeld steht ist aber äquivalent anwendbar:
[i]"...
Das [b]Model[/b]-Objekt der Formular-Listboxen hält folgende Eigenschaften bereit:
...
StringItemList (Array of Strings) – Liste sämtlicher Einträge.
...
...
Zusätzlich stehen über das [b]View[/b]-Objekt der Listbox folgende Methoden zur Verfügung:
...
addItem (Item, Pos) – fügt die in Item angegebene Zeichenfolge an der Position Pos in die Liste ein.
addItems (ItemArray, Pos) – fügt die in dem Zeichenfolgen-Datenfeld ItemArray aufgeführten Einträge in die Liste an der Position Pos ein
...
..."[/i]
Außerdem habe ich hier eine Zusammenstellung von nützlichen Materialien ins Forum gestellt:
http://de.openoffice.info/viewtopic.php?t=1553
Dort findet sich auch für die Combobox ein Beispiel (Überschrift "Beispieldateien" vierter Link). Außerdem nützlich das Developersguide (ebenfalls dort) und das SDK (Software Development Kit), bisher noch nicht dort, aber jetzt ergänzt.
Gruß
Stephan