Die Bibliothek ScriptForge

So greifen Sie auf diesen Befehl zu:

Wählen Sie Extras – Makros – LibreOffice Basic – Bearbeiten… und den Container Anwendungsmakros.


ScriptForge-Bibliotheken bilden eine erweiterbare Sammlung an Makro-Skriptressourcen für LibreOffice, die von Basic-Makros oder Python-Skripten aufgerufen werden können.

note

• Grundlegende Makros erfordern das Laden der Bibliothek ScriptForge mit der folgenden Anweisung:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

• Python-Skripte erfordern einen Import aus dem Modul scriptforge:
from scriptforge import CreateScriptService


tip

Um mehr darĂĽber zu erfahren, wie man Python-Skripte mit der Bibliothek ScriptForge erstellt und ausfĂĽhrt, lesen Sie die Hilfeseite Erstellen von Python-Skripten mit ScriptForge.


Aufrufen von ScriptForge-Diensten

Die beschriebenen Module und Klassen werden von Benutzerskripten als "Dienste" aufgerufen. Zu diesem Zweck wurde fĂĽr jede Sprache ein generischer Konstruktor dieser Dienste entwickelt.

Die Methode Dispose ist in allen Diensten verfĂĽgbar und sollte aufgerufen werden, um Ressourcen nach der Verwendung freizugeben:

In Basic

    GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
    Set oSvc = CreateScriptService("servicename"[, arg0, arg1, ...])
    ' ...
    oSvc.Dispose()
  
In Python

    from scriptforge import CreateScriptService
    svc = CreateScriptService('servicename'[, arg0, arg1, ...])
    # ...
    svc.Dispose()
  

Von der Bibliothek ScriptForge bereitgestellte Dienste

Kategorie

Dienste

LibreOffice Basic

Array
Dictionary

Exception
FileSystem

String
TextStream

Dokumentinhalt

Base
Calc

Chart
Database

Document
Writer

Benutzeroberfläche

Dialog
DialogControl
Form

FormControl
Menu

PopupMenu
UI

Dienstprogramme

Basic
L10N
Platform

Region
Services
Session

Timer
UnitTest


ScriptForge.Array -Service

Stellt eine Sammlung von Methoden zum Bearbeiten und Transformieren von Matrizen mit einer Dimension (Vektoren) und MAtrizen mit zwei Dimensionen bereit. Dazu gehören Set-Operationen, Sortieren, Importieren aus und Exportieren in Textdateien.

Matrizen mit mehr als zwei Dimensionen können mit den Methoden in diesem Dienst nicht verwendet werden, die einzige Ausnahme ist die Methode CountDims, die Matrizen mit einer beliebigen Anzahl von Dimensionen akzeptiert.

Dienst SFDocuments.Base

Der Dienst Base bietet eine Reihe von Methoden und Eigenschaften, um die Verwaltung und Handhabung von LibreOffice Base-Dokumenten zu erleichtern.

Dieser Dienst ist eng mit dem Dienst Document verbunden, der generische Methoden zur Handhabung von LibreOffice-Dokumenten, einschließlich Basisdokumenten, bereitstellt. Daher erweitert der Dienst Base den Dienst Document und stellt zusätzliche Methoden bereit, die spezifisch für Base-Dokumente sind und Benutzern Folgendes ermöglichen:

Dienst ScriptForge.Basic

Der Dienst ScriptForge.Basic schlägt eine Sammlung von LibreOffice Basic-Methoden vor, die in einem Python-Kontext ausgeführt werden können. Die Methoden des Dienstes Basic reproduzieren die genaue Syntax und das Verhalten der integrierten Basic-Funktionen.

Dienst SFDocuments.Calc

Die gemeinsam genutzte Bibliothek SFDocuments bietet eine Reihe von Methoden und Eigenschaften, um die Verwaltung und Handhabung von LibreOffice-Dokumenten zu erleichtern.

Der Dienst SFDocuments.Calc ist eine Unterklasse de Dienstes SFDocuments.Document. Auf alle fĂĽr den Dienst Document definierten Methoden und Eigenschaften kann auch ĂĽber eine Dienstinstanz Calc zugegriffen werden.

Der Dienst Calc konzentriert sich auf:

Dienst SFDocuments.Chart

Der Dienst Chart bietet eine Reihe von Eigenschaften und Methoden zur Handhabung von Diagrammen in Calc-Dokumenten. Mit diesem Dienst ist es möglich:

Dienst SFDatabases.Database

Der Dienst Database bietet Zugriff auf Datenbanken, die entweder eingebettet oder in Base-Dokumenten beschrieben sind. Dieser Dienst bietet Methoden fĂĽr Folgendes:

Dienst SFDialogs.Dialog

Der Dienst Dialog trägt zur Verwaltung von Dialogen bei, die mit dem Dialogeditor Basic erstellt wurden. Jede Instanz der aktuellen Klasse stellt einen einzelnen Dialog dar, der dem Benutzer angezeigt wird.

Dienst SFDialogs.DialogControl

Der Dienst DialogControl verwaltet die Steuerelemente, die zu einem Dialog gehören, der mit dem einfachen Dialogeditor definiert wurde. Jede Instanz des aktuellen Dienstes stellt ein einzelnes Steuerelement innerhalb eines Dialogs dar.

Der Schwerpunkt liegt auf dem Abrufen und Festlegen der Werte, die von den Steuerelementen des Dialogs angezeigt werden. Auf die Formatierung kann ĂĽber die Eigenschaften XControlModel und XControlView zugegriffen werden.

Beachten Sie, dass der Inhalt der eindeutigen Eigenschaft DialogControl.Value je nach Steuerelementtyp variiert.

Ein besonderes Augenmerk wird auf Steuerelemente vom Typ Baumansicht gelegt. Es ist einfach, einen Baum zu fĂĽllen, entweder Zweig fĂĽr Zweig oder mit mehreren Zweigen parallel. Das FĂĽllen eines Baumansicht-Steuerelements kann statisch oder dynamisch erfolgen.

Dienst ScriptForge.Dictionary

Ein Wörterbuch ist eine Sammlung von Schlüsselelementpaaren

Dienst SFDocuments.Document

Die Bibliothek SFDocuments stellt Methoden und Eigenschaften bereit, um die Verwaltung und Bearbeitung von LibreOffice-Dokumenten zu erleichtern.

Der Dienst SFDocuments.Document stellt Methoden zur Verfügung, die für alle Arten von Dokumenten (Textdokumente, Blätter, Präsentationen, …) anwendbar sind. Einige Beispiele sind:

Dienst ScriptForge.Exception

Der Dienst Exception ist eine Sammlung von Methoden zur UnterstĂĽtzung beim Code-Debugging in Basic- und Python-Skripten und bei der Fehlerbehandlung in Basic-Skripten.

Wenn in Basic-Skripten ein Laufzeitfehler auftritt, helfen die Methoden und Eigenschaften des Dienstes Exception dabei, den Fehlerkontext zu identifizieren und ihn zu behandeln.

Dienst ScriptForge.FileSystem

Der Dienst FileSystem enthält Routinen zur Handhabung von Dateien und Ordnern. Als erstes sind einige Beispiele für die Funktionen dieses Dienstes aufgeführt:

Dienst SFDocuments.Form

Der Dienst Form stellt Methoden und Eigenschaften bereit, um Formulare in LibreOffice-Dokumenten zu verwalten. Dieser Dienst unterstützt Formulare in Base-, Calc- und Writer-Dokumenten und ermöglicht Folgendes:

Dienst SFDocuments.FormControl

Der Dienst FormControl bietet Zugriff auf die Steuerelemente, die zu einem Formular, einem Unterformular oder einem Tabellensteuerelement eines FormDocument gehören. Jede Instanz des Dienstes FormControl verweist auf ein einzelnes Steuerelement im Formular. Dieser Dienst ermöglicht Benutzern:

Dienst ScriptForge.L10N

Dieser Dienst bietet eine Reihe von Methoden zur Übersetzung von Zeichenfolgen mit minimaler Auswirkung auf den Quellcode des Programms. Die vom Dienst L10N bereitgestellten Methoden können hauptsächlich für Folgendes verwendet werden:

Dienst SFWidgets.Menu

Der Dienst Menu kann zum Erstellen und Entfernen von MenĂĽs aus der MenĂĽleiste eines LibreOffice-Dokumentfensters verwendet werden. Jeder MenĂĽeintrag kann einem Skript oder einem UNO-Befehl zugeordnet werden. Dieser Dienst bietet die folgenden Funktionen:

Dienst ScriptForge.Platform

Der Dienst Platform stellt eine Sammlung von Eigenschaften ĂĽber die aktuelle AusfĂĽhrungsumgebung und den aktuellen Kontext bereit, beispielsweise:

Dienst SFWidgets.PopupMenu

Der Dienst PopupMenu kann verwendet werden, um Popup-Menüs zu erstellen, die Ereignissen zugeordnet oder von Skripten ausgeführt werden können. Dieser Dienst bietet die folgenden Funktionen:

Dienst ScriptForge.Region

Der Dienst Region stellt eine Sammlung von Eigenschaften und Methoden bereit, um gebietsschema- und regionsbezogene Aspekte der Programmierung zu handhaben, wie zum Beispiel:

Dienst ScriptForge.Services

Der Hauptzweck des Moduls Services besteht darin, Zugriff auf die Methode CreateScriptService bereitzustellen, die in Benutzerskripten aufgerufen werden kann, um Dienste zu instanziieren, die mit dem Framework ScriptForge implementiert werden.

Dienst ScriptForge.Session

Der Dienst Session sammelt verschiedene Allzweckmethoden zu:

Dienst ScriptForge.String

Der Dienst String stellt eine Sammlung von Methoden zur Verarbeitung von Zeichenfolgen bereit. Diese Methoden können verwendet werden, um:

Dienst ScriptForge.TextStream

Der Dienst TextStream wird verwendet, um sequentiell aus Dateien zu lesen und in Dateien zu schreiben, die mit dem Dienst ScriptForge.FileSystem geöffnet oder erstellt wurden.

Die Methoden OpenTextFile und CreateTextFile des Dienstes FileSystem geben eine Instanz des Dienstes TextStream zurĂĽck.

Dienst ScriptForge.Timer

Der Dienst Timer misst die Zeit, die zum Ausführen von Benutzerskripten benötigt wird.

Timer misst die Dauer. Es kann sein:

Dienst ScriptForge.UI

Der Dienst UI (User Interface) vereinfacht die Identifizierung und Handhabung der verschiedenen Fenster, aus denen sich die gesamte LibreOffice-Anwendung zusammensetzt:

Dienst SFUnitTests.UnitTest

Der Dienst UnitTest bietet ein Framework für die Automatisierung von Komponententests mithilfe der Basic-Sprache, einschließlich der Möglichkeit:

Dienst SFDocuments.Writer

Die gemeinsam genutzte Bibliothek SFDocuments bietet eine Reihe von Methoden und Eigenschaften, um die Verwaltung und Handhabung von LibreOffice-Dokumenten zu erleichtern.

Einige Methoden sind generisch für alle Arten von Dokumenten und werden vom Modul SF_Document geerbt, während andere Methoden, die spezifisch für Writer-Dokumente sind, im Modul SF_Writer definiert sind.

Hinweis: Andere unbeschriebene ScriptForge-Module sind für die interne Verwendung reserviert. Ihr Inhalt kann ohne vorherige Ankündigung geändert werden.

warning

Alle ScriptForge Basic-Routinen oder Bezeichner, denen ein Unterstrich "_" vorangestellt ist, sind fĂĽr den internen Gebrauch reserviert. Sie sind nicht fĂĽr die Verwendung in Basic-Makros oder Python-Skripten vorgesehen.


Bitte unterstĂĽtzen Sie uns!