Exemplos de programação para controles no editor de caixa de diálogo

Os exemplos a seguir são para um novo diálogo chamado "Dialog1". Use as ferramentas na barra de Controle no editor de diálogos para criar o diálogo e acrescentar os seguintes controles: uma caixa de seleção chamada "CheckBox1", um campo de rótulo chamado "Label1", um botão chamado "CommandButton1", e uma caixa de listagem chamada "ListBox1".

Ícone Aviso

Ao anexar um controle a uma variável de objeto, seja consistente com as letras maiúsculas e minúsculas.


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

Exibir 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 as propriedades de controles no programa


Sub Sample1
    BasicLibraries.LoadLibrary("Tools")
    oDialog1 = LoadDialog("Standard", "Dialog1")
    REM obter modelo da caixa de diálogo
    oDialog1Model = oDialog1.Model
    REM exibir texto de Label1
    oLabel1 = oDialog1.GetControl("Label1")
    MsgBox oLabel1.Text
    REM definir novo texto para o controle Label1
    oLabel1.Text = "Novos arquivos"
    REM exibir propriedades de modelo para o controle CheckBox1
    oCheckBox1Model = oDialog1Model.CheckBox1
    MsgBox oCheckBox1Model.Dbg_Properties
    REM definir novo estado de CheckBox1 para modelo de controle
    oCheckBox1Model.State = 1
    REM exibir propriedades de modelo para o controle CommandButton1
    oCMD1Model = oDialog1Model.CommandButton1
    MsgBox oCMD1Model.Dbg_Properties
    REM exibir propriedades do controle CommandButton1
    oCMD1 = oDialog1.GetControl("CommandButton1")
    MsgBox oCMD1.Dbg_Properties
    REM executar caixa de diálogo
    oDialog1.Execute()
End Sub

Adicionar uma entrada em uma caixa de listagem


Sub AddEntry
    BasicLibraries.LoadLibrary("Tools")
    oDialog1 = LoadDialog("Standard", "Dialog1")
    REM adiciona uma nova entrada ao controle ListBox
    oDialog1Model = oDialog1.Model
    oListBox = oDialog1.GetControl("ListBox1")
    Dim iCount as integer
    iCount = oListbox.ItemCount
    oListbox.additem("New Item" & iCount,0)
End Sub

Remover uma entrada de uma caixa de listagem


Sub RemoveEntry
    BasicLibraries.LoadLibrary("Tools")
    oDialog1 = LoadDialog("Standard", "Dialog1")
    REM remover a primeira entrada do controle ListBox
    oDialog1Model = oDialog1.Model
    oListBox = oDialog1.GetControl("ListBox1")
    oListbox.removeitems(0,1)
End Sub