OOo对象模型(UNO在宏角度的理解)

我们从下往上来了解UNO。

先把我们的宏理解为客户端(Client),和UNOs的接口(Interface)打交道。
client and interface

接口(Interface)

每个接口由一系列的方法组成,我们可以使用这些方法来:

  • 获取或设置参数
  • 控制接口定义的任何功能性的操作

每个接口包含在一个服务(Service)中。
method 
of interface

服务(Service)

一个服务是一个UNO部件—OOo Calc的一个组成部分。每个服务由一个或多个服务组成,它还包含一系列的属性。
service
 information
我们可以发现服务有四个类型的属性:

  • 常数(Constants)
  • 枚举(Enums)
  • 例外(Exceptions)
  • 结构(Structs)

Properties

模块

UNO 服务按层级结构在模块中分组。我们现在已经从UNO的最底级来到了最高级。很多模块嵌套在另外一个模块中。而所有的模块嵌套在一个最高级的模块— com.sun.star。这个模块就像Excel中的Application对象。
module 
infomation

开始使用UNO

到了这里我们基本上对OpenOffice.org对象模型有了一个基本的了解。我们可以先使用一个简单的例子(打开和关闭一个电子表格)来了解怎样使用 UNO。
我们先需要了解:

  • 每个服务保存在一个模块中。
  • 所有的模块保存在一个中央模块中— com.sun.star。
  • 一个服务由函数createUnoService创建。
  • 我们将使用frame模块中的 Desktop服务。

desktop
 service

Sub OpenAndClose
Dim oDesk as Object
Dim oDoc as Object
Dim oUrl as String
oDesk = createUnoService ("com.sun.star.frame.Desktop")
oUrl = "private:factory/scalc"
oDoc = oDesk.loadComponentFromURL (oUrl, "_blank", 0, Array() )
oDoc.close(true)
End Sub
这个代码打开一个空白电子表格然后关闭它,没什么用处,但是告诉我们怎样操作电子表格。
 其实,UNO只是定义的一种规范,如果自己要写UNO组件就得遵守这个规范。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值