OpenOffice Basic
OpenOffice Basic (ранее известный как StarOffice Basic или StarBasic или OOoBasic) — это диалект языка программирования BASIC, впервые появившийся в офисном пакете StarOffice и получивший распространение с пакетом OpenOffice.org, а также с производными от него, такими как LibreOffice (в котором он известен как LibreOffice Basic).
ПримерПравить
Хотя OpenOffice Basic сам по себе похож на другие диалекты BASIC, такие как Microsoft VBA, его API сильно отличается, как показано в примере макроса ниже. В то время как есть гораздо более простой способ получить свойство документа «счётчик абзацев», в примере показан основные последовательный метод доступа к каждому абзацу текстового документа.
Sub ParaCount
'
' Подсчитать количество абзацев в текстовом документе
'
Dim Doc As Object, Enum As Object, TextEl As Object, Count As Long
Doc = ThisComponent
' Это текстовый документ?
If Not Doc.SupportsService("com.sun.star.text.TextDocument") Then
MsgBox "This macro must be run from a text document", 64, "Error"
Exit Sub
End If
Count = 0
' Проверить каждый компонент: абзац или таблица?
Enum = Doc.Text.CreateEnumeration
While Enum.HasMoreElements
TextEl = Enum.NextElement
' Является ли компонент абзацем?
If TextEl.SupportsService("com.sun.star.text.Paragraph") Then
Count = Count + 1
End If
Wend
'Display result
MsgBox Count, 0, "Paragraph Count"
End Sub
См. такжеПравить
СсылкиПравить
- BASIC Macros
- OpenOffice.org BASIC Programming Guide Архивная копия от 15 июля 2012 на Wayback Machine wiki
- OpenOffice.org VBA emulation model project Архивная копия от 23 мая 2012 на Wayback Machine
- Andrew Pitonyak’s macro information Архивная копия от 5 мая 2016 на Wayback Machine
- OpenOffice.org API
- OpenOffice.org/StarOffice API Project Page Архивная копия от 24 февраля 2011 на Wayback Machine
- OpenOffice.org SDK Архивная копия от 16 февраля 2011 на Wayback Machine
- OpenOffice.org Developer’s Guide Архивная копия от 14 мая 2012 на Wayback Machine
- API reference manual Архивная копия от 18 февраля 2011 на Wayback Machine