2

我想使用 BASIC 为 LibreOffice 创建一些宏。但是我找不到 API 描述。它在帮助和互联网中都不存在。当我尝试用谷歌搜索时,我得到了大量的 C++、Java、Python 示例,但没有一个带有 BASIC 的 www。

例如,我可以从哪里获得对象的层次结构及其方法?

4

1 回答 1

3

LibreOffice Basic 使用与 PyUNO 和 Java 基本相同的 API。也就是说,它们都使用 UNO API。开始时,OpenOffice 开发指南很有帮助地描述了进入对象层次结构的两种主要方法,Global变量ThisComponent和不太常见的StarDesktop. LO Base 中还有一个特殊的变体,ThisDatabaseDocument. 要获取这些对象的属性和方法,请执行MsgBox oObject.DBG_properties.DBG_methods。将此方法返回的较长列表复制到文本编辑器中进行搜索通常更容易。您会发现您所揭示的所有或几乎所有方法和属性都将在LibreOffice UNO IDL API中进行描述. ObjectAPI 的文档描述性不强,但您可以使用该资源填写一些基本细节.DBG_properties

导航对象层次结构的关键属性是.Parent.Model.CurrentController偶尔.Source。关键方法是getByName()getByIndex()。触发宏的事件通常会返回一个事件对象,其源或父对象是启动宏的对象,例如命令按钮,这也是有帮助的。这个对象可以通过与Sub, ie, Sub SubName (oEventObject As Variant)...一起引用来访问。

于 2015-08-26T04:37:48.793 回答