Difference between revisions of "ZH/Documentation/BASIC Guide/Working With Dialogs"

From Apache OpenOffice Wiki
Jump to: navigation, search
 
(4 intermediate revisions by one other user not shown)
Line 14: Line 14:
 
可以使用 {{OOo}} 对话框编辑器创建和构造对话框:
 
可以使用 {{OOo}} 对话框编辑器创建和构造对话框:
  
[[Image:documentation_basicguide_dlg_01.gif|none|thumb|500px|在对话框编辑器中创建和构造对话框]]
+
[[Image:ZH-Documentation basicguide dlg 01 trans.gif|none|thumb|500px|在对话框编辑器中创建和构造对话框]]
  
 
可以将控制元素从设计面板(右侧)拖到对话框区域中,并定义其位置和大小。
 
可以将控制元素从设计面板(右侧)拖到对话框区域中,并定义其位置和大小。
Line 20: Line 20:
 
下面的示例显示了一个包含标签和列表框的对话框。
 
下面的示例显示了一个包含标签和列表框的对话框。
  
[[Image:documentation_basicguide_dlg_04.gif|none|thumb|500px|包含标签和列表框的对话框]]
+
[[Image:ZH-Documentation basicguide dlg 04-trans.gif|none|thumb|500px|包含标签和列表框的对话框]]
  
 
可以使用以下代码打开对话框:
 
可以使用以下代码打开对话框:
Line 85: Line 85:
 
该代码首先确定 <tt>MyButton</tt> 控制元素的对象,然后使用对该元素的引用初始化 <tt>Ctl</tt> 对象变量。最后,该代码将控制元素的 <tt>Label</tt> 属性设置为 <tt>New Label</tt> 值。
 
该代码首先确定 <tt>MyButton</tt> 控制元素的对象,然后使用对该元素的引用初始化 <tt>Ctl</tt> 对象变量。最后,该代码将控制元素的 <tt>Label</tt> 属性设置为 <tt>New Label</tt> 值。
  
{{Documentation/Note|与 {{OOo}} Basic 标识符不同,控制元素名称区分大小写。}}
+
{{Note|与 {{OOo}} Basic 标识符不同,控制元素名称区分大小写。}}
  
 
== 使用对话框和控制元素的模型 ==
 
== 使用对话框和控制元素的模型 ==
Line 105: Line 105:
  
 
{{PDL1}}
 
{{PDL1}}
{{InterWiki_Languages_BasicGuide|articletitle=Documentation/BASIC Guide/Working With Dialogs}}
+
 
 +
 
 
{{InterWiki_Languages_BasicGuide|articletitle=Documentation/BASIC Guide/Working With Dialogs}}
 
{{InterWiki_Languages_BasicGuide|articletitle=Documentation/BASIC Guide/Working With Dialogs}}

Latest revision as of 14:36, 6 July 2018

doc OOo
Book.png


Apache OpenOffice Basic 对话框由一个对话框窗口组成,其中可以包含文本字段、列表框、单选按钮以及其他控制元素。

创建对话框

可以使用 Apache OpenOffice 对话框编辑器创建和构造对话框:

File:ZH-Documentation basicguide dlg 01 trans.gif
在对话框编辑器中创建和构造对话框

可以将控制元素从设计面板(右侧)拖到对话框区域中,并定义其位置和大小。

下面的示例显示了一个包含标签和列表框的对话框。

包含标签和列表框的对话框

可以使用以下代码打开对话框:

Dim Dlg As Object
 
DialogLibraries.LoadLibrary("Standard")
Dlg = CreateUnoDialog(DialogLibraries.Standard.DlgDef)
Dlg.Execute()
Dlg.dispose()

CreateUnoDialog 创建了一个名为 Dlg 的对象,该对象引用关联的对话框。在创建对话框之前,必须确保已加载对话框使用的库(本示例中为 Standard 库)。LoadLibrary 方法可以执行此任务。

在初始化 Dlg 对话框对象后,可以使用 Execute 方法显示该对话框。此类对话框称为模态对话框,因为只有在关闭对话框后才能对其执行其他编程操作。在打开此类对话框时,程序会处于 Execute 调用状态。

在程序结束后,最后一行代码中的 dispose 方法将会批准对话框使用的资源。

关闭对话框

使用“确定”或“取消”进行关闭

如果对话框包含确定取消按钮,在单击其中一个按钮时,将会自动关闭对话框。有关使用这些按钮的详细信息,请参见对话框控制元素详述

如果通过单击确定按钮关闭对话框,Execute- 方法将返回值 1,否则返回值 0。

Dim Dlg As Object
 
DialogLibraries.LoadLibrary("Standard")
Dlg = CreateUnoDialog(DialogLibraries.Standard.MyDialog)
Select Case Dlg.Execute() 
Case 1
  MsgBox "Ok pressed"
Case 0 
  MsgBox "Cancel pressed"
End Select

使用标题栏中的“关闭”按钮进行关闭

可通过单击对话框窗口标题栏上的“关闭”按钮来关闭对话框。对话框的 Execute 方法将返回值 0,这与单击“取消”时返回的值相同。

使用显式程序调用进行关闭

还可以使用 endExecute 方法关闭打开的对话框窗口:

Dlg.endExecute()

访问单个控制元素

对话框可以包含任意数目的控制元素。可通过返回控制元素名称的 getControl 方法访问这些元素。

Dim Ctl As Object
 
Ctl = Dlg.getControl("MyButton")
Ctl.Label = "New Label"

该代码首先确定 MyButton 控制元素的对象,然后使用对该元素的引用初始化 Ctl 对象变量。最后,该代码将控制元素的 Label 属性设置为 New Label 值。

Documentation note.png 与 Apache OpenOffice Basic 标识符不同,控制元素名称区分大小写。

使用对话框和控制元素的模型

Apache OpenOffice API 中的很多地方都区分可见程序元素(视图)及其背后的数据或文档(模型)。除了控制元素的方法和属性之外,对话框和控制元素对象还具有一个下级 Model 对象。此对象用于直接访问对话框或控制元素的内容。

与其他 Apache OpenOffice API 区域不同,在对话框中,没有始终对数据和描绘进行明确的区分。可以同时通过“视图”和“模型”来提供 API 元素。

可通过 Model 属性以程序控制方式访问对话框和控制元素对象的模型。

Dim cmdNext As Object
 
cmdNext = Dlg.getControl("cmdNext")
cmdNext.Model.Enabled = False

本示例借助 cmdNtext 中的模型对象停用了 Dlg 对话框中的 cmdNtext 按钮。

Content on this page is licensed under the Public Documentation License (PDL).
Personal tools