Programming Examples for Controls in the Dialog Editor

La jenaj ekzemploj estas por dialogo nomita "Dialog1". Uzu la ilojn en la breto Ilaro en la dialoga redaktilo por krei la dialogon kaj aldoni la jenajn regilojn: Markobutono nomita "CheckBox1", Etikeda kampo nomita "Label1", Butono nomita "CommandButton1", kaj Fallisto nomita "ListBox1".

Averta bildsimbolo

Uzu konsekvence majusklojn kaj minusklojn kiam vi alligas regilon al objekta variablo.


Malloka funkcio por ŝargi dialogojn


Function LoadDialog(Libname as String, DialogName as String, Optional oLibContainer)
Dim oLib as Object ' com.sun.star.script.XLibraryContainer
Dim oLibDialog as Object
Dim oRuntimeDialog as Object
    If IsMissing(oLibContainer) Then
        oLibContainer = DialogLibraries
    End If
    oLibContainer.LoadLibrary(LibName)
    oLib = oLibContainer.GetByName(Libname)
    oLibDialog = oLib.GetByName(DialogName)
    oRuntimeDialog = CreateUnoDialog(oLibDialog)
    LoadDialog() = oRuntimeDialog
End Function

LoadDialog function is stored in Tools.ModuleControls available from LibreOffice Macros and Dialogs.

Montrado de Dialogo


REM malloka difino de variablo
Dim oDialog1 AS Object
Sub StartDialog1
    With GlobalScope.BasicLibraries
       If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
    End With
    oDialog1 = Tools.ModuleControls.LoadDialog("Standard", "Dialog1")
    oDialog1.Execute()
End Sub

Legi aŭ redakti atributojn de regiloj en la programo


Sub Sample1
    With GlobalScope.Basiclibraries
       If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
    End With
    oDialog1 = Tools.LoadDialog("Standard", "Dialog1")
    REM trovu dialogan modelon
    oDialog1Model = oDialog1.Model
    REM vidigi tekston de Label1
    oLabel1 = oDialog1.GetControl("Label1")
    MsgBox oLabel1.Text
    REM agordi novan tekston por regilo Label1
    oLabel1.Text = "New Files"
    REM vidigi modelajn atributojn por regilo CheckBox1
    oCheckBox1Model = oDialog1Model.CheckBox1
    MsgBox oCheckBox1Model.Dbg_Properties
    REM agordi novan staton por CheckBox1 por model de regado
    oCheckBox1Model.State = 1
    REM vidigi modelajn atributojn por regilo CommandButton1
    oCMD1Model = oDialog1Model.CommandButton1
    MsgBox oCMD1Model.Dbg_Properties
    REM vidigi atributojn por regilo CommandButton1
    oCMD1 = oDialog1.GetControl("CommandButton1")
    MsgBox oCMD1.Dbg_Properties
    REM ruligi dialogon
    oDialog1.Execute()
End Sub

Aldoni elementon al ListBox


Sub AddEntry
    With GlobalScope.Basiclibraries
       If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
    End With
    oDialog1 = ModuleControls.LoadDialog("Standard", "Dialog1")
    REM aldonas novan elementon al ListBox
    oDialog1Model = oDialog1.Model
    oListBox = oDialog1.GetControl("ListBox1")
    Dim iCount as integer
    iCount = oListbox.ItemCount
    oListbox.additem("New Item" & iCount,0)
End Sub

Forigi elementon el ListBox


Sub RemoveEntry
    With GlobalScope.Basiclibraries
       If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
    End With
    oDialog1 = Tools.ModuleControls.LoadDialogLoadDialog("Standard", "Dialog1")
    REM forigi la unuan elementon el ListBox
    oDialog1Model = oDialog1.Model
    oListBox = oDialog1.GetControl("ListBox1")
    oListbox.removeitems(0,1)
End Sub

Bonvolu subteni nin!