Примери за програмиране на контроли в редактора на диалогови прозорци

Следващите примери са за нов диалогов прозорец с име „Dialog1“. Използвайки инструментите от лентата Кутия с инструменти в редактора на диалози, добавете следните контроли: поле за отметка с име „CheckBox1“, поле за етикет с име „Label1“, бутон с име „CommandButton1“ и списъчно поле с име „ListBox1“.

Икона Внимание

Спазвайте главните и малките букви, когато прикачвате контрола към променлива за обект.


Глобална функция за зареждане на диалогови прозорци


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

Показване на диалогов прозорец


REM Дефиниции на глобални променливи
Dim oDialog1 AS Object
Sub StartDialog1
    BasicLibraries.LoadLibrary("Tools")
    oDialog1 = LoadDialog("Standard", "Dialog1")
    oDialog1.Execute()
End Sub

Четене или редактиране свойствата на контроли в програмата


Sub Sample1
    BasicLibraries.LoadLibrary("Tools")
    oDialog1 = LoadDialog("Standard", "Dialog1")
    REM Получаване на модела на диалоговия прозорец
    oDialog1Model = oDialog1.Model
    REM Показване текста на етикета Label1
    oLabel1 = oDialog1.GetControl("Label1")
    MsgBox oLabel1.Text
    REM Задаване на нов текст за етикета Label1
    oLabel1.Text = "Нови файлове"
    REM Показване на свойствата на модела за полето CheckBox1
    oCheckBox1Model = oDialog1Model.CheckBox1
    MsgBox oCheckBox1Model.Dbg_Properties
    REM Задаване на ново състояние за модела на полето CheckBox1
    oCheckBox1Model.State = 1
    REM Показване на свойствата на модела за бутона CommandButton1
    oCMD1Model = oDialog1Model.CommandButton1
    MsgBox oCMD1Model.Dbg_Properties
    REM Показване на свойствата на бутона CommandButton1
    oCMD1 = oDialog1.GetControl("CommandButton1")
    MsgBox oCMD1.Dbg_Properties
    REM Изпълняване на диалоговия прозорец
    oDialog1.Execute()
End Sub

Добавяне на елемент в списъчно поле


Sub AddEntry
    BasicLibraries.LoadLibrary("Tools")
    oDialog1 = LoadDialog("Standard", "Dialog1")
    REM Добавя нов елемент в ListBox
    oDialog1Model = oDialog1.Model
    oListBox = oDialog1.GetControl("ListBox1")
    Dim iCount as integer
    iCount = oListbox.ItemCount
    oListbox.additem("Нов елемент" & iCount,0)
End Sub

Премахване на елемент от списъчно поле


Sub RemoveEntry
    BasicLibraries.LoadLibrary("Tools")
    oDialog1 = LoadDialog("Standard", "Dialog1")
    REM Премахване на първия елемент от списъчното поле
    oDialog1Model = oDialog1.Model
    oListBox = oDialog1.GetControl("ListBox1")
    oListbox.removeitems(0,1)
End Sub

Моля, подкрепете ни!