Hallo,
Benjamin.Kiepke schrieb:
> ich zur Laufzeit erzeugen muss. Dafür ist laut dem Buch von Thomas
> Krumbein das UnoControlButtonModel zuständig
Wo schreibt er das?
Auf Seite 581 lese _ich_:
"...
wobei dieser der Name des gewünschten Models übergeben wird, also zum
Beispiel com.sun.star.UnoControlButtonModel für einen Button
..."
also 'gewünschtes' und 'zum Beispiel'.
Wie auch immer, habe mich jetzt dem Code von Thomas bemächtigt und zwei
Stellen angepasst, was zur Verdeutlichung genügen sollte:
Sub LaufzeitDialogErstellen
dim oDlgM as object ' das Model des Dialoges
dim oDlg as object ' der Dialog an sich
dim oMod as object ' nimmt jeweils das Model der Elemente auf
dim oWin as object ' das Fenster für den Dialog
REM Das Dialogmodel erzeugen:
oDlgM = CreateUnoService("com.sun.star.awt.UnoControlDialogModel")
REM Eigenschaften zuweisen
oDlgM.setPropertyValue("PositionX", 30)
oDlgM.setPropertyValue("PositionY", 30)
oDlgM.setPropertyValue("Width", 200)
oDlgM.setPropertyValue("Height", 100)
oDlgM.setPropertyValue("Title", "Ein Laufzeitdialog")
REM ein Beschriftungsfeld erzeugen
oMod =
oDlgM.createInstance("com.sun.star.awt.UnoControlFixedTextModel")
REM die Eigenschaften setzen
oMod.setPropertyValue("Name", "Txt_Feld1")
oMod.setPropertyValue("Align", 1)
oMod.setPropertyValue("TabIndex", 1)
oMod.setPropertyValue("PositionX", 15)
oMod.setPropertyValue("PositionY", 15)
oMod.setPropertyValue("Width", 170)
oMod.setPropertyValue("Height", 30)
oMod.setPropertyValue("Label", "Dieser Dialog wurde zur Laufzeit
erstellt.")
REM und dem Dialogmodel zuweisen
oDlgM.insertByName("Txt_Field1", oMod)
REM einen Button erzeugen
oMod = oDlgM.createInstance("com.sun.star.awt.UnoControlCheckBoxModel")
REM die Eigenschaften setzen
oMod.setPropertyValue("Name", "Button1")
oMod.setPropertyValue("TabIndex", 2)
oMod.setPropertyValue("PositionX", 50)
oMod.setPropertyValue("PositionY", 65)
oMod.setPropertyValue("Width", 100)
oMod.setPropertyValue("Height", 20)
oMod.setPropertyValue("Label", "OK")
' oMod.setPropertyValue("PushButtonType",
com.sun.star.awt.PushButtonType.OK)
REM und dem Dialogmodel zuweisen
oDlgM.insertByName("Button1", oMod)
REM den Dialog erzeugen
oDlg = CreateUnoService("com.sun.star.awt.UnoControlDialog")
oDlg.setModel(oDlgM)
REM ein Fenster erzeugen und den Dialog zuweisen
oWin = CreateUnoService("com.sun.star.awt.Toolkit")
oDlg.createPeer(oWin, null)
Rem Dialog aufrufen
oDlg.execute()
End Sub
Informationen zu den einzelnen Steuerelementen findest Du in der
IDL-Referenz, auch auf der Buch-CD im Buch von Thomas im Ordner
..\SDK\API-Referenz_lokal.
Genauer:
..\SDK\API-Referenz_lokal\awt\module-ix.html
bzw.
..\SDK\API-Referenz_lokal\awt\UnoControlCheckBoxModel.html
Gruß
Jörg
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]