Примери за програмиране на контроли в редактора на диалогови прозорци
Следващите примери са за нов диалогов прозорец с име „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