Storitev ScriptForge.Services

Glavni namen modula Services je zagotavljati dostop do metode CreateScriptService, ki jo lahko kličete iz uporabniških skriptov, da tvorite instanco storitev, ki so implementirane z uporabo ogrodja ScriptForge.

V terminologiji knjižnice ScriptForge je storitev zbirka metod in lastnosti, ki jih lahko uporabite za splošne namene. Primer: storitev String ponuja metode za ravnanje z nizi, storitev FileSystem pa omogoča ravnanje z datotekami in mapami.

tip

Modul Services knjižnice ScriptForge ponuja dodatne metode, ki se uporabljajo interno za registracijo razpoložljivih storitev ali pa jih uporabijo razvijalci, ki jih zanima širitev ScriptForge z ustvarjanjem novih storitev. Edina metoda, ki je relevantna za uporabniške skripte, je CreateScriptService.


CreateScriptService

Ta metoda se uporablja za tvorbo instance storitve ScriptForge, tako da jo lahko kličete v uporabniških skriptih.

Vrnjena vrednost je predmet Basic ali Nothing, če je prišlo do napake.

Skladnja:

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

Parametri:

service: ime storitve, identificirane kot niz v obliki »library.service« (torej »knjižnica.storitev«).

arg0, arg1, ...: seznam argumentov, ki jih zahteva priklicana storitev.

Če se prvi argument sklicuje na upravitelja dogodkov, je arg0 obvezen in mora biti predmet UNO, ki predstavlja dogodek, podan kot argument za uporabniški makro.

Primer:

V Basicu

    GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
    ' To bo storjeno enkrat
    Dim svc As Object
    Set svc = CreateScriptService("Array")
    ' Sklicuje se na storitev "ScriptForge.Array" ali SF_Array
    Set svc = CreateScriptService("ScriptForge.Dictionary")
    ' Vrne novo prazno instanco razreda slovarjev; niz "ScriptForge." je neobvezen
    Set svc = CreateScriptService("SFDocuments.Calc")
    ' Sklicuje se na storitev Calc, implementirano v povezani knjižnici SFDocuments
    Set svc = CreateScriptService("Timer", True)
    ' Vrne instanco razreda Timer, ki se takoj zažene
    Set svc = CreateScriptService("SFDocuments.DocumentEvent", oEvent)
    ' Sklicuje se na storitev DocumentEvent, implementirano v povezani knjižnici SFDocuments
    ' Vrne instanco razreda Document, ki je sprožila dogodek
  
V Pythonu

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

Skripti Python podpirajo argumente ključnih besed pri klicih CreateScriptService. Naslednji primer ilustrira ta koncept s priklicem instanc storitev Timer in Document z uporabo ključnih besed kot argumentov.


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

Da bi bilo pisanje skriptov v Pythonu bolj tekoče, ponuja ScriptForge storitev Basic, ki omogoča skriptom Python, da kličejo nabor metod z isto skladnjo in pomenom kot njihove enakozvočne domorodne funkcije v Basicu.


Naslednji primer prikliče storitev Basic in kliče metodo MsgBox, ki je ekvivalentna funkciji MsgBox, ki je na voljo v Basicu:


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

Bodite pozorni, instanco storitve Basic morate v skriptih Python tvoriti z metodo CreateScriptService.


warning

Vsi podprogrami ali identifikatorji ScriptForge Basic s predpono podčrtaja (»_«) so rezervirani za interno uporabo. Uporabi v makrih Basic ali skriptih Python niso namenjeni.


Podprite nas!