SFWidgets.ToolbarButton-tjeneste

Tjenesten ToolbarButton gjør det mulig å hente informasjon relatert til verktøylinjeknappene som er tilgjengelige i en gitt verktøylinje. Med denne tjenesten er det mulig å:

Tjenestepåkallelse

Før du bruker ToolbarButton-tjenesten, må ScriptForge-biblioteket lastes eller importeres:

note

• Grunnleggende makroer krever å laste ScriptForge-biblioteket ved hjelp av følgende setning:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

• Python-skript krever import fra scriptforge-modulen:
fra scriptforge import CreateScriptService


Tjenesten ToolbarButton påkalles ved hjelp av ToolbarButtons-metoden fra Verktøylinje-tjenesten.

I Basic

Eksemplet nedenfor henter navnene på alle knappene som er tilgjengelige på Standard-verktøylinjen.


    oDoc = CreateScriptService("Document", ThisComponent)
    oToolbar = oDoc.Toolbars("standardbar")
    arrToolbarButtons = oToolbar.ToolbarButtons()
    MsgBox SF_String.Represent(arrToolbarButtons)
  
tip

Bruk metoden ToolbarButtons uten argumenter for å hente en matrise med alle tilgjengelige verktøylinjeknappnavn.


Eksemplet nedenfor veksler mellom synligheten av Skriv ut-knappen på Standard-verktøylinjen:


    oDoc = CreateScriptService("Document", ThisComponent)
    oToolbar = oDoc.Toolbars("standardbar")
    oToolbarButton = oToolbar.ToolbarButtons("Skriv ut")
    oToolbarButton.Visible = Not oToolbarButton.Visible
  
tip

Knappenavnet som ble sendt som argument til ToolbarButtons-metoden er det lokaliserte knappnavnet som er definert i Verktøy - Tilpass - Verktøylinjer-dialogen.


note

Inaktive verktøylinjer har ikke knapper. Derfor, ved å kalle ToolbarButtons-metoden vil verktøylinjen bli synlig.


I Python

    bas = CreateScriptService("Basic")
    doc = CreateScriptService("Document", bas.ThisComponent)
    toolbar = doc.Toolbars("standardbar")
    arr_toolbar_buttons = toolbar.ToolbarButtons()
    bas.MsgBox(repr(arr_toolbar_buttons))
  

    bas = CreateScriptService("Basic")
    doc = CreateScriptService("Document", bas.ThisComponent)
    toolbar = doc.Toolbars("standardbar")
    toolbar_button = toolbar.ToolbarButtons("Skriv ut")
    toolbar_button.Visible = not toolbar_button.Visible
  

Egenskaper

Navn

Skrivebeskyttet

Type

Beskrivelse

Caption

Ja

String

Returnerer navnet på knappen.

Height

Ja

Long

Returnerer høyden på knappen, i piksler.

Index

Ja

Long

Returnerer indeksen til knappen i dens overordnede verktøylinje.

OnClick

Nei

String

UNO-kommandoen eller -skriptet som utføres når knappen trykkes. Les Wiki-siden Scripting Framework URI Specification for å lære mer om hvordan du definerer en URI-streng.

Parent

Ja

Verktøylinje tjeneste

Returnerer en Verktøylinje tjenesteforekomst som tilsvarer den overordnede verktøylinjen til gjeldende verktøylinjeknapp.

TipText

Nei

String

Spesifiserer verktøytipsteksten som vises når brukeren holder musepekeren over verktøylinjeknappen.

Visible

Nei

Boolean

Angir om verktøylinjeknappen er synlig eller ikke.

Width

Ja

Long

Returnerer bredden på knappen, i piksler.

X

Ja

Long

Returnerer X (horisontal) koordinaten til øverste venstre hjørne av knappen, i piksler.

Y

Ja

Long

Returnerer Y-koordinaten (vertikal) til øverste venstre hjørne av knappen, i piksler.


Bruk av ToolbarButton ved siden av PopupMenu-tjenesten

Et vanlig brukstilfelle av egenskapene X og Y beskrevet ovenfor er å åpne en popup-meny i posisjonen der verktøylinjeknappen er plassert.

Anta at du oppretter skriptet nedenfor og assosierer det med en knapp kalt "Min knapp" i standardlinjen. Når den klikkes, vil en popup-meny vises med 3 alternativer som brukeren kan velge.

I Basic

    Sub OpenPopupMenu()
        GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
        oDoc = CreateScriptService("Document", ThisComponent)
        oToolbar = oDoc.Toolbars("standardbar")
        oButton = oToolbar.ToolbarButtons("Min knapp")
        oPopup = CreateScriptService("SFWidgets.PopupMenu", , oButton.X, oButton.Y + oButton.Height)
        oPopup.AddItem("Emne A", "A")
        oPopup.AddItem("Emne B", "B")
        oPopup.AddItem("Emne C", "C")
        strResponse = oPopup.Execute(False)
        MsgBox "Ditt valg: " & strResponse
    End Sub
  
I Python

    def open_popup_menu(args=None):
        bas = CreateScriptService("Basic")
        doc = CreateScriptService("Document", bas.ThisComponent)
        toolbar = doc.Toolbars("standardbar")
        toolbutton = toolbar.ToolbarButtons("Min knapp")
        popup = CreateScriptService("PopupMenu", None, toolbutton.X, toolbutton.Y + toolbutton.Height)
        popup.AddItem("Emne A", "A")
        popup.AddItem("Emne B", "B")
        popup.AddItem("Emne C", "C")
        response = popup.Execute(False)
        bas.MsgBox(f"Ditt valg: {respons}")
  

Liste over metoder i ToolbarButton-tjenesten

Execute


Execute

Utfører kommandoen eller skriptet knyttet til verktøylinjeknappen.

Denne metoden returnerer verdien returnert av kommandoen eller skriptet som ble utført.

tip

Bruk egenskapen OnClick for å bestemme kommandoen eller skriptet som skal utføres. Hvis kommandoen/skriptet ikke returnerer noen verdi, returneres Null.


Syntaks:

svc.Execute(): any

Eksempel:

Eksemplet nedenfor kjører Skriv ut-knappen fra Standard-verktøylinjen:

I Basic

      oDoc = CreateScriptService("Document", ThisComponent)
      oToolbar = oDoc.Toolbars("standardbar")
      oToolbarButton = oToolbar.ToolbarButtons("Skriv ut")
      oToolbarButton.Execute()
    
I Python

      bas = CreateScriptService("Basic")
    doc = CreateScriptService("Document", bas.ThisComponent)
    toolbar = doc.Toolbars("standardbar")
    toolbar_button = toolbar.ToolbarButtons("Skriv ut")
    toolbar_button.Execute()
    
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!