Did you know that the OpenOffice.org Wiki has a WYSIWYG editor? See Help:FCKeditor

通用网络对象 (Universal Network Objects, UNO)

From OpenOffice.org Wiki

Jump to: navigation, search
doc OOo
Image:Book.png

OpenOffice.org 提供了通用网络对象 (Universal Network Objects, UNO) 形式的编程接口。这是一个面向对象的编程接口,OpenOffice.org 又将其细分为各种对象,从而确保以程序控制的方式访问 Office 程序包。

由于 OpenOffice.org Basic 是一种过程编程语言,因此必须在其中添加几种语言结构才能使用 UNO。

要在 OpenOffice.org Basic 中使用通用网络对象,您需要对关联对象进行变量声明。该声明是使用 Dim 指令完成的(请参见 OpenOffice.org Basic 语言)。应使用 Object 类型指定来声明对象变量:

Dim Obj As Object

该调用声明了一个名为 Obj 的对象变量。

接下来,必须初始化创建的对象变量,以便能够使用该变量。可以使用 createUnoService 函数完成此操作:

Obj = createUnoService("com.sun.star.frame.Desktop")

此调用将对新建对象的引用赋值给 Obj 变量。com.sun.star.frame.Desktop 类似于一种对象类型,但在 UNO 术语中,将其称为“服务”而不是“类型”。按照 UNO 的定义,Obj 被描述为对支持 com.sun.star.frame.Desktop 服务的对象的引用。因此,OpenOffice.org Basic 中使用的“服务”术语与其他编程语言中使用的“类型”和“类”术语相对应。

但存在一个主要区别:通用网络对象可以同时支持多种服务。而有些 UNO 服务又支持其他服务,这样,通过一个对象便可提供各种服务。例如,之前提到的基于 com.sun.star.frame.Desktop 服务的对象还可以包括用于加载文档和结束程序的其他服务。

Image:documentation_note.png在 VBA 中,对象结构是通过其所属的类定义的;而在 OpenOffice.org Basic 中,对象结构是通过其支持的服务定义的。VBA 对象总是被指定到一个特定的类,而 OpenOffice.org Basic 对象可以支持多种服务。


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