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]

Antwort per Email an