Ajuda do Collabora Office 24.04
Os seguintes exemplos são para uma nova caixa de diálogo chamada "Dialog1". Utilize as ferramentas na barra Caixa de ferramentas no editor de caixas de diálogo para criar a caixa de diálogo e adicionar os seguintes controlos: uma caixa de seleção designada por "CheckBox1", um campo de etiqueta designado por "Label1", um Botão designado por "CommandButton1" e uma caixa de lista designada por "ListBox1".
Deve respeitar as letras maiúsculas e minúsculas ao anexar um controlo a uma variável de objeto.
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 definição global de variáveis
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 de diálogo
oDialog1Model = oDialog1.Model
REM mostrar texto de Label1
oLabel1 = oDialog1.GetControl("Label1")
MsgBox oLabel1.Text
REM definir novo texto para o controlo Label1
oLabel1.Text = "Novos Ficheiros"
REM mostrar propriedades do modelo para o controlo CheckBox1
oCheckBox1Model = oDialog1Model.CheckBox1
MsgBox oCheckBox1Model.Dbg_Properties
REM definir novo estado de CheckBox1 para o modelo ou controlo
oCheckBox1Model.State = 1
REM mostrar propriedades do modelo para o controlo CommandButton1
oCMD1Model = oDialog1Model.CommandButton1
MsgBox oCMD1Model.Dbg_Properties
REM mostrar propriedades do controlo CommandButton1
oCMD1 = oDialog1.GetControl("CommandButton1")
MsgBox oCMD1.Dbg_Properties
REM executar 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 adiciona uma nova entrada à ListBox
oDialog1Model = oDialog1.Model
oListBox = oDialog1.GetControl("ListBox1")
Dim iCount as integer
iCount = oListbox.ItemCount
oListbox.additem("Novo Item" & 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 remover a primeira entrada da ListBox
oDialog1Model = oDialog1.Model
oListBox = oDialog1.GetControl("ListBox1")
oListbox.removeitems(0,1)
End Sub