Nápověda LibreOffice 25.2
Služba ToolbarButton umožňuje získávat informace týkající se tlačítek dostupných na zadané nástrojové liště. Pomocí této služby lze:
Přepínat viditelnost prvků na nástrojové liště.
Spustit příkaz přiřazený zadanému tlačítku nástrojové lišty.
Před používáním služby ToolbarButton je nutné načíst či naimportovat knihovnu ScriptForge pomocí:
Služba ToolbarButton je vytvořena metodou ToolbarButtons ze služby Toolbar.
V následujícím příkladu se získají názvy všech tlačítek dostupných na nástrojové liště .
    oDoc = CreateScriptService("Document", ThisComponent)
    oToolbar = oDoc.Toolbars("standardbar")
    arrToolbarButtons = oToolbar.ToolbarButtons()
    MsgBox SF_String.Represent(arrToolbarButtons)
  Metodou ToolbarButtons použitou bez argumentů získáte pole s názvy dostupných tlačítek nástrojové lišty.
V následujícím příkladu je přepnuta viditelnost tlačítka na nástrojové liště :
    oDoc = CreateScriptService("Document", ThisComponent)
    oToolbar = oDoc.Toolbars("standardbar")
    oToolbarButton = oToolbar.ToolbarButtons("Tisk")
    oToolbarButton.Visible = Not oToolbarButton.Visible
  Název tlačítka předaný jako argument metody ToolbarButtons je lokalizovaným názvem uvedeným v dialogovém okně .
Neaktivní nástrojové lišty tlačítka nemají, proto volání metody ToolbarButtons způsobí, že se lišta stane viditelnou.
    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("Tisk")
    toolbar_button.Visible = not toolbar_button.Visible
  | Název | Pouze pro čtení | Typ | Popis | 
|---|---|---|---|
| Caption | ano | String | Vrátí název tlačítka. | 
| Height | ano | Long | Vrátí výšku tlačítka v pixelech. | 
| Index | ano | Long | Vrátí index tlačítka v jeho nástrojové liště. | 
| OnClick | ne | String | Příkaz UNO nebo skript spuštěný při stisknutí tlačítka. Další informace o tom, jak definovat řetězec URI, naleznete na wiki stránce Scripting Framework URI Specification. | 
| Parent | ano | služba Toolbar | Vrátí instanci služby Toolbar odpovídající nástrojové liště pro aktuální tlačítko. | 
| TipText | ne | String | Určuje text tipu, který se zobrazuje, když uživatel najede myší nad tlačítko na liště. | 
| Visible | ne | Boolean | Určuje, zda je tlačítko lišty viditelné, nebo není. | 
| Width | ano | Long | Vrátí šířku tlačítka v pixelech. | 
| X | ano | Long | Vrátí souřadnici X (vodorovnou) levého horního rohu tlačítka v pixelech. | 
| Y | ano | Long | Vrátí souřadnici Y (svislou) levého horního rohu tlačítka v pixelech. | 
Obvyklým případem použití výše popsaných vlastností X a Y je otevření vyskakovací nabídky na místě, kde se nachází tlačítko nástrojové lišty.
Například jste vytvořili níže uvedený skript a přiřadili jej k tlačítku pojmenovanému „Moje tlačítko“ na liště standardbar. Po klepnutí na tlačítko se zobrazí vyskakovací nabídka, v níž může uživatel vybrat ze tří možností.
    Sub OpenPopupMenu()
        GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
        oDoc = CreateScriptService("Document", ThisComponent)
        oToolbar = oDoc.Toolbars("standardbar")
        oButton = oToolbar.ToolbarButtons("Moje tlačítko")
        oPopup = CreateScriptService("SFWidgets.PopupMenu", , oButton.X, oButton.Y + oButton.Height)
        oPopup.AddItem("Položka A", "A")
        oPopup.AddItem("Položka B", "B")
        oPopup.AddItem("Položka C", "C")
        strResponse = oPopup.Execute(False)
        MsgBox "Zvoleno: " & strResponse
    End Sub
  
    def open_popup_menu(args=None):
        bas = CreateScriptService("Basic")
        doc = CreateScriptService("Document", bas.ThisComponent)
        toolbar = doc.Toolbars("standardbar")
        toolbutton = toolbar.ToolbarButtons("Moje tlačítko")
        popup = CreateScriptService("PopupMenu", None, toolbutton.X, toolbutton.Y + toolbutton.Height)
        popup.AddItem("Položka A", "A")
        popup.AddItem("Položka B", "B")
        popup.AddItem("Položka C", "C")
        response = popup.Execute(False)
        bas.MsgBox(f"Zvoleno: {response}")
  | Seznam metod služby ToolbarButton | ||
|---|---|---|
| 
 | 
 | |
Spustí příkaz nebo skript přiřazený k tlačítku nástrojové lišty.
Tato metoda vrátí hodnotu vrácenou spuštěným příkazem nebo skriptem.
To, který příkaz nebo skript se má spustit, zjistíte z vlastnosti OnClick. Jestliže příkaz či skript hodnotu nevrací, vrátí se Null.
svc.Execute(): any
V následujícím příkladu se spustí příkaz pro tlačítko na nástrojové liště :
      oDoc = CreateScriptService("Document", ThisComponent)
      oToolbar = oDoc.Toolbars("standardbar")
      oToolbarButton = oToolbar.ToolbarButtons("Tisk")
      oToolbarButton.Execute()
    
      bas = CreateScriptService("Basic")
    doc = CreateScriptService("Document", bas.ThisComponent)
    toolbar = doc.Toolbars("standardbar")
    toolbar_button = toolbar.ToolbarButtons("Tisk")
    toolbar_button.Execute()