Exemplos de programação de controlos no editor de caixas de diálogo

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".

Ícone de aviso

Deve respeitar as letras maiúsculas e minúsculas ao anexar um controlo a uma variável de objeto.


Função global para carregar caixas de diálogo

Function LoadDialog(Libname as String, DialogName as String, Optional oLibContainer)

Dim oLib as Object

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

Mostrar uma caixa de diálogo

REM definição global de variáveis

Dim oDialog1 AS Object

Sub StartDialog1

    BasicLibraries.LoadLibrary("Tools")

    oDialog1 = LoadDialog("Standard", "Dialog1")

    oDialog1.Execute()

End Sub

Ler ou editar propriedades de controlos no programa

Sub Sample1

    BasicLibraries.LoadLibrary("Tools")

    oDialog1 = 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

Adicionar uma entrada a uma caixa de lista

Sub AddEntry

    BasicLibraries.LoadLibrary("Tools")

    oDialog1 = 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

Remover uma entrada de uma caixa de lista

Sub RemoveEntry

    BasicLibraries.LoadLibrary("Tools")

    oDialog1 = LoadDialog("Standard", "Dialog1")

    REM remover a primeira entrada da ListBox

    oDialog1Model = oDialog1.Model

    oListBox = oDialog1.GetControl("ListBox1")

    oListbox.removeitems(0,1)

End Sub