Tartalom
Index 🔎︎

# Programming Examples for Controls in the Dialog Editor

Az alábbiak egy új „Dialog1” nevű párbeszédablak létrehozására mutatnak példát. A párbeszédablak-szerkesztő Eszközök paneljén található eszközökkel hozza létre a párbeszédablakot, és adja hozzá a következő vezérlőelemeket: egy „CheckBox1” nevű Jelölőnégyzetet, egy „Label1” nevű Címkét, egy „CommandButton1” nevű Gombot és egy „ListBox1” nevű Listamezőt.

Legyen következetes a kis- és nagybetűk használatával egy vezérlőelem object (objektum) változóhoz rendelése esetén.

### Általános függvény párbeszédablakok betöltéséhez

    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.

### Párbeszédablak megjelenítése

    REM változók globális meghatározása
    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

### A programban levő vezérlőelemek tulajdonságainak olvasása vagy szerkesztése

    Sub Sample1
        With GlobalScope.Basiclibraries
           If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
        End With
        oDialog1 = Tools.LoadDialog("Standard", "Dialog1")
        REM a párbeszédablak-modell beolvasása
        oDialog1Model = oDialog1.Model
        REM a Label1 szövegének megjelenítése
        oLabel1 = oDialog1.GetControl("Label1")
        MsgBox oLabel1.Text
        REM a Label1 vezérlőelem szövegének megváltoztatása
        oLabel1.Text = "Új fájlok"
        REM a CheckBox1 vezérlőelem modelltulajdonságainak megjelenítése
        oCheckBox1Model = oDialog1Model.CheckBox1
        MsgBox oCheckBox1Model.Dbg_Properties
        REM a CheckBox1 vezérlőelem modelljében új állapot beállítása
        oCheckBox1Model.State = 1
        REM a CommandButton1 vezérlőelem modelltulajdonságainak megjelenítése
        oCMD1Model = oDialog1Model.CommandButton1
        MsgBox oCMD1Model.Dbg_Properties
        REM a CommandButton1 vezérlőelem tulajdonságainak megjelenítése
        oCMD1 = oDialog1.GetControl("CommandButton1")
        MsgBox oCMD1.Dbg_Properties
        REM párbeszédablak futtatása
        oDialog1.Execute()
    End Sub

### Bejegyzés hozzáadása egy listamezőhöz

    Sub AddEntry
        With GlobalScope.Basiclibraries
           If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
        End With
        oDialog1 = ModuleControls.LoadDialog("Standard", "Dialog1")
        REM hozzáad a listamezőhöz egy új bejegyzést
        oDialog1Model = oDialog1.Model
        oListBox = oDialog1.GetControl("ListBox1")
        Dim iCount as integer
        iCount = oListbox.ItemCount
        oListbox.additem("New Item" & iCount,0)
    End Sub

### Bejegyzés eltávolítása egy listamezőből

    Sub RemoveEntry
        With GlobalScope.Basiclibraries
           If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
        End With
        oDialog1 = Tools.ModuleControls.LoadDialogLoadDialog("Standard", "Dialog1")
        REM a listamező első bejegyzésének eltávolítása
        oDialog1Model = oDialog1.Model
        oListBox = oDialog1.GetControl("ListBox1")
        oListbox.removeitems(0,1)
    End Sub

Kapcsolódó témakörök

Vezérlőelemek tulajdonságainak módosítása a párbeszédablak-szerkesztőben

Basic-párbeszédablak létrehozása

Vezérlőelemek létrehozása a párbeszédablak-szerkesztőben

Opening a Dialog With Basic