Axuda do LibreOffice 24.8
Os seguintes exemplos guíano na creación dunha caixa de diálogo chamada «Dialog1». Utilice as ferramentas situadas na Caixa de ferramentas no editor de caixas de diálogo para crear a caixa de diálogo e engadir os seguintes controis: unha Caixa de verificación chamada «CaixaVerificación1», un Campo de etiqueta chamado «CampoEtiqueta1», un Botón chamado «Botón1», e unha Caixa de lista chamada «CaixaLista1».
Ao anexar un control a unha variábel de obxecto, sexa coherente no uso de letras maiúsculas e minúsculas.
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 Application Macros and Dialogs.
rem definición global de variábeis
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
Sub Sample1
With GlobalScope.Basiclibraries
If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
End With
oDialog1 = Tools.LoadDialog("Standard", "Dialog1")
REM obter modelo da caixa de diálogo
oDialog1Model = oDialog1.Model
REM mostrar texto de Etiqueta1
oLabel1 = oDialog1.GetControl("Label1")
MsgBox oLabel1.Text
REM definir novo texto para o control Etiqueta1
oLabel1.Text = "Novos ficheiros"
REM mostrar propiedades de modelo para o control CaixaVerificación1
oCheckBox1Model = oDialog1Model.CheckBox1
MsgBox oCheckBox1Model.Dbg_Properties
REM definir novo estado de CaixaVerificación1 para modelo de control
oCheckBox1Model.State = 1
REM mostrar propiedades de modelo para o control Botón1
oCMD1Model = oDialog1Model.CommandButton1
MsgBox oCMD1Model.Dbg_Properties
REM mostrar propiedades do control Botón1
oCMD1 = oDialog1.GetControl("CommandButton1")
MsgBox oCMD1.Dbg_Properties
REM executar caixa de diálogo
oDialog1.Execute()
End Sub
Sub AddEntry
With GlobalScope.Basiclibraries
If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
End With
oDialog1 = ModuleControls.LoadDialog("Standard", "Dialog1")
REM engade unha nova entrada ao control CaixaLista
oDialog1Model = oDialog1.Model
oListBox = oDialog1.GetControl("ListBox1")
Dim iCount as integer
iCount = oListbox.ItemCount
oListbox.additem("Novo elemento" & iCount,0)
End Sub
Sub RemoveEntry
With GlobalScope.Basiclibraries
If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
End With
oDialog1 = Tools.ModuleControls.LoadDialogLoadDialog("Standard", "Dialog1")
REM eliminar a primeira entrada do control CaixaListaxe
oDialog1Model = oDialog1.Model
oListBox = oDialog1.GetControl("ListBox1")
oListbox.removeitems(0,1)
End Sub