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