Vsebina
Kazalo 🔎︎

# Primeri programiranja za kontrolnike v urejevalniku pogovornih oken

Sledeči primeri so za novo pogovorno okno, imenovano »Pogovorno okno 1«. V urejevalniku pogovornih oken uporabite orodja v vrstici Kontrolniki, s katerimi lahko ustvarite pogovorno okno in dodate naslednje kontrolnike: potrdilno polje z imenom »Potrdilno polje 1«, a polje z nalepko z imenom »Napis 1«, gumb z imenom »Gumb1« in seznamsko polje z imenom »Seznamsko polje 1«.

Pazite na velike in male črke v imenih, ko kontrolniku dodelite predmetno spremenljivko.

### Globalna funkcija za nalaganje pogovornih oken

    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

Funkcija LoadDialog je shranjena v Tools.ModuleControls, ki je na voljo v knjižnici Makri in pogov. okna LibreOffice.

### Prikaz pogovornega okna

    REM globalna definicija spremenljivk
    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

### Pregledovanje in urejanje lastnosti kontrolnikov v programu

    Sub Sample1
        With GlobalScope.Basiclibraries
           If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
        End With
        oDialog1 = Tools.LoadDialog("Standard", "Dialog1")
        REM najdi model pogovornega okna
        oDialog1Model = oDialog1.Model
        REM prikaži besedilo za Napis1
        oLabel1 = oDialog1.GetControl("Label1")
        MsgBox oLabel1.Text
        REM določi novo besedilo za kontrolnik Napis1
        oNapis1.Text = "Nove datoteke"
        REM prikaži lastnosti kontrolnika CheckBox1
        oCheckBox1Model = oDialog1Model.CheckBox1
        MsgBox oCheckBox1Model.Dbg_Properties
        REM določi novo stanje za kontrolnik CheckBox1 za model kontrolnika
        oCheckBox1Model.State = 1
        REM prikaži modelne lastnosti kontrolnika CommandButton1
        oCMD1Model = oDialog1Model.CommandButton1
        MsgBox oCMD1Model.Dbg_Properties
        REM prikaži lastnosti kontrolnika CommandButton1
        oCMD1 = oDialog1.GetControl("CommandButton1")
        MsgBox oCMD1.Dbg_Properties
        REM izvedi pogovorno okno
        oDialog1.Execute()
    End Sub

### Dodaj vnos na seznamsko polje

    Sub AddEntry
        With GlobalScope.Basiclibraries
           If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
        End With
        oDialog1 = ModuleControls.LoadDialog("Standard", "Dialog1")
        REM doda nov vnos v polje ListBox
        oDialog1Model = oDialog1.Model
        oListBox = oDialog1.GetControl("ListBox1")
        Dim iCount as integer
        iCount = oListbox.ItemCount
        oSezPolje.additem("Nov vnos" & iStevec,0)
    End Sub

### Odstrani vnos iz seznamskega polja

    Sub RemoveEntry
        With GlobalScope.Basiclibraries
           If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
        End With
        oDialog1 = Tools.ModuleControls.LoadDialogLoadDialog("Standard", "Dialog1")
        REM odstrani prvi vnos iz kontrolnika ListBox
        oDialog1Model = oDialog1.Model
        oListBox = oDialog1.GetControl("ListBox1")
        oListbox.removeitems(0,1)
    End Sub

Podobne teme

Spreminjanje lastnosti kontrolnika v urejevalniku pogovornih oken

Ustvarjanje pogovornega okna Basic

Izdelava kontrolnikov v urejevalniku pogovornih oken

Odpiranje pogovornega okna z Basicom