对话框编辑器中控件的编程示例
以下示例针对的是一个名为 "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 = "New Files"
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("New Item" & iCount,0)
End Sub
删除 ListBox 中的条目
Sub RemoveEntry
BasicLibraries.LoadLibrary("Tools")
oDialog1 = LoadDialog("Standard", "Dialog1")
REM 删除 ListBox 中的第一个条目
oDialog1Model = oDialog1.Model
oListBox = oDialog1.GetControl("ListBox1")
oListbox.removeitems(0,1)
End Sub