ScriptForge-biblioteket

For å bruka denne funksjonen …

Opna Verktøy → Makroar → LibreOffice Basic → Rediger og vel Programmakroar.


ScriptForge-biblioteker byggjer opp ei samling av makroskriptressursar, som kan utvidast, for LibreOffice som skal startast frå grunnleggjande makroar eller Python-skript.

note

• Grunnleggjande makroar krev innlasting av biblioteket ScriptForge ved hjelp av denne setninga:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

• Python-skript krev import frå scriptforge-modulen:
from scriptforge import CreateScriptService


tip

For å læra meir om korleis du lagar og køyrer Python-skript ved å bruka ScriptForge-biblioteket, kan du lesa hjelpesida Laga Python-skript med ScriptForge.


Slå på ScriptForge-tenester

The described modules and classes are invoked from user scripts as "Services". A generic constructor of those services has been designed for that purpose for each language.

The Dispose method is available in all services and should be called to free up resources after usage:

I Basic

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

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

Tenester leverte av biblioteket ScriptForge

Kategori

Tenester

LibreOffice Basic

Array
Dictionary

Exception
FileSystem

String
TextStream

Dokumentinnhald

Base
Calc

Chart
Database

Document
Writer

Brukargrensesnitt

Dialog
DialogControl
Form

FormControl
Menu

PopupMenu
UI

Verktøyprogram

Basic
L10N
Platform

Region
Services
Session

Timer
UnitTest


ScriptForge.Array-teneste

Inneheld ei samling metodar for å redigera og transformera matriser med éin dimensjon (vektorar) og matriser med to dimensjonar. Dette inkluderer settoperasjonar, sortering, import frå og eksport til tekstfiler.

Matyriser med meir enn to dimensjonar kan ikkje brukast med metodane i denne tenesta. Einaste unnataket er metoden CountDims, som godtar matriser med kor mange dimensjonar som helst.

Tenesta SFDocuments.Base

Tenesta Base inneheld ei rad metodar og eigenskapar for å forenkla administreringa og hanfsaminga av LibreOffice Base-dokument.

Denne tenesta er nært knytt til tenesta ;Document, som inneheld generiske metodar for handsaming av LibreOffice-dokument, inkludert Base-dokument. Difor utvidar tenesta Base Document-tenesta og inneheld fleire metodar som er spesifikke for Base-dokument, slik at brukarane kan:

Tenesta ScriptForge.Basic

Tenesta ScriptForge.Basic tilbyr ei samling av LibreOffice Basic-metodar som kan køyrast i ein Python-samanheng. Tenesta Basic sine metodar reproduserer dei innebygde Basic-funksjonane nøyaktig i høve til syntaks og oppførsel.

Tenesta SFDocuments.Calc

Det delte biblioteket SFDocuments som gjev mange metodar og eigenskapar som letter administrasjon og handsaming av LibreOffice-dokument.

Tenesta SFDocuments.Calc er ein underklasse av SFDocuments.Document -tenesta. Alle metodar og eigenskapar definerte for tenesta Document kan også nåast ved å bruka ein førekomst av Calc-tenesta.

Tenesta Calc er fokusert på:

SFDocuments.Chart service

Teenesta Chart (diagram) leverer eit sett eigenskapar og metodar for å handsama diagram i Calc-dokument. Med denne tenesta er det råd å:

Tenesta SFDatabases.Database

Tenesta Database gjev tilgang til databasar anten innebygde eller omtalte i Base-dokument. Denne tenesta leverer metodar til:

Tenesta SFDialogs.Dialog

Tenesta Dialog bidreg til handsaminga av dialogar oppretta med Basic lDialog Editor. Kvar førekomst av den nåverande klassen representerer éin dialogboks som vert vist for brukaren.

Tenesta SFDialogs.DialogControl

Tenesta DialogControl handsamar dei kontrollelementa som høyrer til eit dialogvindauge som er definert med Dialog Editor i Basic. Kvar førekomst av den gjeldande tenesta representerer eitt kontrollelement i eit dialogvindauge.

Fokus vert sett på å hente verdiane som vert viste av kontrollelementa i dialogvindauget. Formatering er tilgjengeleg via eigenskapane XControlModel og XControlView.

Merk at innhaldet av den unike eigenskapen DialogControl.Value varierer i høve til type kontrollelement.

Kontrollar av typen trekontroll får spesiell merksemd. Det er enkelt å fylla eit tre, anten forgreina etter grein eller med eit sett med greiner samstundes. Utfylling av ein trekontroll kan gjerast statisk eller dynamisk.

Tenesta ScriptForge.Dictionary

Ei ordliste er ei samling av nøkkelelementpar

Tenesta SFDocuments.Document

The SFDocuments library provides methods and properties to facilitate the management and manipulation of LibreOffice documents.

Metodar som kan brukast på alle typar av dokument (tekstdokument, rekneark, presentasjonar og så vidare) vert leverte av tenesta SFDocuments.Document. Nokre eksempel er:

Tenesta ScriptForge.Exception

Tenesta Exception (unnatak) er ei samling av metodar som hjelper til med med feilsøking (debugging) av kode i Basic- og Python-skript og feilhandsaming i Basic-skript.

Når det oppstår ein køyretidsfeil i Basic-skript, hjelper metodane og eigenskapane til Exception-tenesta til å identifisere feilsamanhengen og tillata å handsama han.

Tenesta ScriptForge.FileSystem

Tenesta FileSystem inneheld rutinar for handsaming av filer og mapper. Her kjem nokre eksempel på funksjonane som vert leverte av denne tenesta:

Tenesta SFDocuments. Form

Tenesta Form har metodar og eigenskapar for å administrera skjema i LibreOffice-dokument. Denne tenesta har støtte for skjema i Base-, Calc- og Writer-dokument og tillet:

Teenesta SFDocuments.FormControl

Tenesta FormControl gjev tilgang til kontrollane knytte til eit skjema, underskjema eller ein tabellkontroll for eit FormDocument. Kvar førekomst av FormControl-tenesta refererer til eitt enkelt kontrollelement i skjemaet. Denne tenesta tillet brukarane å:

Tenesta ScriptForge.L10N

Denne tenesta inneheld ei rekkje metodar knytt til omsetjinga av strengar med minimal innverknad på kjeldekodane for programmet. Metodane som er leverte av tenesta L10N kan i hovudsak brukast til å:

SFWidgets.Menu service

The Menu service can be used to create and remove menus from the menubar of a LibreOffice document window. Each menu entry can be associated with a script or with a UNO command. This service provides the following capabilities:

Tenesta ScriptForge.Platform

Tenesta Platform inneheld ei samling eigenskapar om gjeldande køyringsmiljø og samanheng, for eksempel:

SFWidgets.PopupMenu service

Tenesta PopupMenu kan brukast til å laga sprettoppmenyar som kan knyttast til hendingar eller køyrast av skript. Denne tenesta inneheld desse funksjonane:

ScriptForge.Region service

The Region service provides a collection of properties and methods to handle locale and region-related aspects of programming, such as:

Tenesta ScriptForge.Services

Hovudføremålet med modulen Services er å gje tilgang til metoden CreateScriptService, som kan kallast opp i brukarskript for å setja opp tenester som vert implementerte med ScriptForge-miljøet.

Tenesta ScriptForge.Session

Tenesta Session samlar ulike generelle metodar:

Tenesta ScriptForge.String

Tenesta String leverer ei samling av metodar til strenghandsaming. Desse metodane kan brukast til:

Tenesta ScriptForge.TextStream

Tenesta TextStream vert brukt til å lesa sekvensielt frå og skriva til filer som er opna eller laga ved hjelp av tenesta ScriptForge.FileSystem.

Metodane OpenTextFile og CreateTextFile frå tenesta FileSystem returnerer ein førekomst av tenesta TextStream.

Tenesta ScriptForge.Timer

Tenesta Timer måler kor lang tid det tar å køyra brukarskript.

Ein Timer mæler tidlengd. Det kan vera:

Tenesta ScriptForge.UI

T Tenesta UI (User Interface = brukargrensesnitt) gjer identifikasjonen og handsaminga av dei ulike vindauga som heile LibreOffice-programmet er bygd opp av.

SFUnitTests.UnitTest service

The UnitTest service provides a framework for automating unit tests using the Basic language, including the ability to:

Tenesta SFDocuments.Writer

Det delte biblioteket SFDocuments gjev mange metodar og eigenskapar som letter administrasjon og handsaming av LibreOffice-dokument.

Nokre metodar gjeld for alle typar dokument og er nedarva frå modulen SF_Document, medan andre metodar som er spesifikke for Writer er definerte i modulen SF_Writer.

Merk: Andre ScriptForge-modular som ikkje er omtalte, er reserverte for internt bruk. Innhaldet i desse kan endrast utan varsel.

warning

Alle ScriptForge Basic-rutinane og -identifikatorane som vert innleidde med understrek «_» er reserverte for internt bruk. Dei er ikkje meint brukte i Basic-makroar.


Støtt oss!