ScriptForge.Tjenester tjeneste

Hovedformålet med modulen Tjenester er å gi tilgang til metoden CreateScriptService, som kan kalles inn brukerskript for å instansiere tjenester som er implementert ved hjelp av ScriptForge-rammeverket.

I ScriptForge-terminologi er en tjeneste en samling metoder og egenskaper som kan brukes til et felles formål. For eksempel gir Streng-tjenesten metoder for å manipulere strenger, mens FileSystem-tjenesten tillater manipulering av filer og mapper.

tip

Modulen Tjenester i ScriptForge-biblioteket gir tilleggsmetoder som brukes enten internt for å registrere tilgjengelige tjenester eller av utviklere som er interessert i å utvide ScriptForge ved å lage nye tjenester. Den eneste metoden som er relevant for brukerskript er CreateScriptService.


CreateScriptService

Denne metoden brukes til å instansiere en ScriptForge-tjeneste slik at den kan kalles opp i brukerskript.

Den returnerte verdien er et Basic-objekt eller Ingenting hvis det oppstod en feil.

Syntaks:

svc.CreateScriptService(service: str, [arg0: any] ...): svc

Parametre:

tjeneste: Navnet på tjenesten identifisert som en streng i formatet "library.service":

arg0, ...: En liste over argumenter som kreves av den påkalte tjenesten.

Hvis det første argumentet refererer til en hendelsesbehandler, er arg0 obligatorisk og må være UNO-objektet som representerer hendelsen som er gitt som argument til brukermakroen.

Eksempel:

I Basic

    GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
    ' Skal gjøres en gang
    Dim svc As Object
    Set svc = CreateScriptService("Array")
    ' Refererer til "ScriptForge.Array"-tjenesten eller SF_Array
    Set svc = CreateScriptService("ScriptForge.Dictionary")
    ' Returnerer en ny tom ordbokklasseforekomst; "ScriptForge." er valgfritt
    Set svc = CreateScriptService("SFDocuments.Calc")
    ' Refererer til Calc-tjenesten, implementert i det tilknyttede SFDocuments-biblioteket
    Set svc = CreateScriptService("Timer", True)
    ' Returnerer en Timer-klasseforekomst som starter umiddelbart
    Set svc = CreateScriptService("SFDocuments.DocumentEvent", oEvent)
    ' Refererer til DocumentEvent-tjenesten implementert i det tilknyttede SFDocuments-biblioteket
    ' Returnerer forekomsten av Document-klassen som utløste hendelsen
  
I Python

    from scriptforge import CreateScriptService
    svc = CreateScriptService("Array")
    svc = CreateScriptService("ScriptForge.Dictionary")
    svc = CreateScriptService("SFDocuments.Calc")
    svc = CreateScriptService("Timer", True)
    svc = CreateScriptService("SFDocuments.DocumentEvent", oEvent)
  

Python-skript støtter søkeordargumenter når du kaller CreateScriptService. Følgende eksempel illustrerer dette konseptet ved å instansiere Timer og Dokument-tjenestene ved å bruke søkeordargumenter.


    from scriptforge import CreateScriptService
    # Timer
    my_timer = CreateScriptService("Timer", start = True)
    # Document
    my_doc = CreateScriptService("Document", windowname = "some_file.ods")
  
tip

For å gjøre skriving av Python-skript mer flytende, tilbyr ScriptForge Basic-tjenesten som lar Python-skript kalle en samling metoder med samme syntaks og betydning som deres homonyme opprinnelige Basic-funksjoner.


Følgende eksempel instansierer Basic-tjenesten og kaller opp MsgBox-metoden, som tilsvarer MsgBox-funksjonen som er tilgjengelig i Basic:


    from scriptforge import CreateScriptService
    bas = CreateScriptService("Basic")
    bas.MsgBox("Hello World!")
  
note

Vær oppmerksom på at Basic-tjenesten må instansieres i Python-skript ved å bruke CreateScriptService-metoden.


warning

Alle ScriptForge Grunnleggende rutiner eller identifikatorer som er prefikset med et understrekingstegn "_" er reservert for intern bruk. De er ikke ment å brukes i grunnleggende makroer eller Python-skript.


Supporter oss!