2014-12-04 145 views
1

我想使用BASIC爲LibreOffice創建幾個宏。但是我找不到API說明。它不在幫助中,也不在意。當我嘗試谷歌它時,我得到了C++,Java,Python中的大量例子,但沒有使用BASIC的單個www。我在哪裏可以找到BASIC的LibreOffice API的描述符

例如,從哪裏可以得到對象及其方法的層次結構?

回答

3

LibreOffice Basic使用與PyUNO和Java基本相同的API。也就是說,他們都使用UNO API。要開始,OpenOffice development guide有助於描述進入對象層次結構的兩種主要方法,即Global變量ThisComponent和更少見的StarDesktop。 LO Base中還有一個專用變體,ThisDatabaseDocument。要獲取這些對象的屬性和方法,請執行MsgBox oObject.DBG_properties.DBG_methods。將通過此方法返回的較長列表複製到文本編輯器中進行搜索通常比較容易。您會發現所有或幾乎所有的方法和屬性將在LibreOffice UNO IDL API中描述。 API的文檔不具有描述性,但您可以使用該資源填寫一些基本的詳細信息。每個Object都有屬性,可以通過.DBG_properties查看。

導航對象層次結構的關鍵屬性是.Parent,.Model.CurrentController,有時還有.Source。關鍵方法是getByName()getByIndex()。觸發宏的事件通常返回一個事件對象也很有用,該對象的源或父是啓動宏的對象,例如命令按鈕。這個目的可以通過參考Sub,即Sub SubName (oEventObject As Variant) ....

相關問題