Περιεχόμενα

# Υπηρεσία SFWidgets.ToolbarButton

Η υπηρεσία ToolbarButton επιτρέπει την ανάκτηση πληροφοριών που σχετίζονται με τα πλήκτρα της γραμμής εργαλείων που είναι διαθέσιμα σε μια δεδομένη γραμμή εργαλείων. Με αυτήν την υπηρεσία είναι δυνατή:

- Η εναλλαγή της ορατότητας των στοιχείων της γραμμής εργαλείων.

- Η εκτέλεση της εντολής που σχετίζεται με ένα συγκεκριμένο πλήκτρο της γραμμής εργαλείων.

## Κλήση υπηρεσίας

Πριν χρησιμοποιήσετε την υπηρεσία ToolbarButton, πρέπει να φορτωθεί ή να εισαχθεί η βιβλιοθήκη ScriptForge:

• Οι μακροεντολές Basic απαιτούν τη φόρτωση της βιβλιοθήκης ScriptForge χρησιμοποιώντας την ακόλουθη πρόταση:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")
• Τα σενάρια Python απαιτούν εισαγωγή από την ενότητα scriptforge:
από το scriptforge import CreateScriptService

Η υπηρεσία ToolbarButton καλείται χρησιμοποιώντας τη μέθοδο ToolbarButtons από την υπηρεσία Toolbar.

##### Σε Basic

Το παρακάτω παράδειγμα ανακτά τα ονόματα όλων των διαθέσιμων πλήκτρων στη γραμμή εργαλείων Τυπικό.

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

Χρησιμοποιήστε τη μέθοδο ToolbarButtons χωρίς ορίσματα για να ανακτήσετε έναν πίνακα με όλα τα διαθέσιμα ονόματα πλήκτρων της γραμμής εργαλείων.

Το παρακάτω παράδειγμα αλλάζει την ορατότητα του πλήκτρου Εκτύπωση στη γραμμή εργαλείων Τυπικό:

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

Το όνομα του πλήκτρου που μεταβιβάστηκε ως όρισμα στη μέθοδο ToolbarButtons είναι το τοπικό όνομα πλήκτρου που ορίζεται στο παράθυρο διαλόγου Εργαλεία - Προσαρμογή - Γραμμές εργαλείων.

Οι ανενεργές γραμμές εργαλείων δεν έχουν πλήκτρα. Επομένως, η κλήση της μεθόδου ToolbarButtons θα κάνει τη γραμμή εργαλείων ορατή.

##### Σε 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("Print")
        toolbar_button.Visible = not toolbar_button.Visible

## Ιδιότητες

Όνομα | Μόνο για ανάγνωση | Τύπος | Περιγραφή
--- | --- | --- | ---
Caption | Ναι | String | Επιστρέφει το όνομα του πλήκτρου.
Height | Ναι | Long | Επιστρέφει το ύψος του πλήκτρου, σε εικονοστοιχεία.
Index | Ναι | Long | Επιστρέφει το ευρετήριο του πλήκτρου στη γονική γραμμή εργαλείων του.
OnClick | Όχι | String | Η εντολή ή το σενάριο UNO εκτελείται όταν πατηθεί το πλήκτρο. Διαβάστε τη σελίδα Wiki Προδιαγραφές URI πλαισίου δέσμης ενεργειών για να μάθετε περισσότερα σχετικά με τον τρόπο ορισμού μιας συμβολοσειράς URI.
Parent | Ναι | Υπηρεσία Toolbar | Επιστρέφει μια παρουσία υπηρεσίας Toolbar που αντιστοιχεί στη γονική γραμμή εργαλείων του τρέχοντος πλήκτρου της γραμμής εργαλείων.
TipText | Όχι | String | Καθορίζει το κείμενο συμβουλής εργαλείου που εμφανίζεται όταν ο χρήστης τοποθετεί το δείκτη του ποντικιού πάνω από το πλήκτρο της γραμμής εργαλείων.
Visible | Όχι | Boolean | Καθορίζει εάν το πλήκτρο της γραμμής εργαλείων είναι ορατό ή όχι.
Width | Ναι | Long | Επιστρέφει το πλάτος του πλήκτρου, σε εικονοστοιχεία.
X | Ναι | Long | Επιστρέφει τη συντεταγμένη X (οριζόντια) της επάνω αριστερής γωνίας του πλήκτρου, σε εικονοστοιχεία.
Y | Ναι | Long | Επιστρέφει την συντεταγμένη Y (κάθετη) της επάνω αριστερής γωνίας του πλήκτρου, σε εικονοστοιχεία.

## Χρήση του ToolbarButton παράλληλα με την υπηρεσία PopupMenu

Μια συνηθισμένη περίπτωση χρήσης των ιδιοτήτων X και Y που περιγράφονται παραπάνω είναι να ανοίξετε ένα αναδυόμενο μενού στη θέση όπου βρίσκεται το πλήκτρο της γραμμής εργαλείων.

Ας υποθέσουμε ότι δημιουργείτε το παρακάτω σενάριο και το συσχετίζετε με ένα πλήκτρο που ονομάζεται "My Button" στην standardbar. Όταν πατηθεί, θα εμφανιστεί ένα αναδυόμενο μενού με 3 επιλογές για να επιλέξει ο χρήστης.

##### Σε Basic

        Sub OpenPopupMenu()
            GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
            oDoc = CreateScriptService("Document", ThisComponent)
            oToolbar = oDoc.Toolbars("standardbar")
            oButton = oToolbar.ToolbarButtons("My Button")
            oPopup = CreateScriptService("SFWidgets.PopupMenu", , oButton.X, oButton.Y + oButton.Height)
            oPopup.AddItem("Item A", "A")
            oPopup.AddItem("Item B", "B")
            oPopup.AddItem("Item C", "C")
            strResponse = oPopup.Execute(False)
            MsgBox "Your choice: " & strResponse
        End Sub

##### Σε Python

        def open_popup_menu(args=None):
            bas = CreateScriptService("Basic")
            doc = CreateScriptService("Document", bas.ThisComponent)
            toolbar = doc.Toolbars("standardbar")
            toolbutton = toolbar.ToolbarButtons("My Button")
            popup = CreateScriptService("PopupMenu", None, toolbutton.X, toolbutton.Y + toolbutton.Height)
            popup.AddItem("Item A", "A")
            popup.AddItem("Item B", "B")
            popup.AddItem("Item C", "C")
            response = popup.Execute(False)
            bas.MsgBox(f"Your choice: {response}")

Κατάλογος μεθόδων στην υπηρεσία ToolbarButton
Execute |  |

## Execute

Εκτελεί την εντολή ή το σενάριο που σχετίζεται με το πλήκτρο της γραμμής εργαλείων.

Αυτή η μέθοδος επιστρέφει την τιμή που επιστρέφεται από την εντολή ή το σενάριο που εκτελέστηκε.

Χρησιμοποιήστε την ιδιότητα OnClick για να προσδιορίσετε την εντολή ή το σενάριο που θα εκτελεστεί. Εάν η εντολή/σενάριο δεν επιστρέφει καμία τιμή, τότε επιστρέφεται το Null.

### Σύνταξη:

svc.Execute(): any

### Παράδειγμα:

Το παρακάτω παράδειγμα εκτελεί το πλήκτρο Εκτύπωση από τη γραμμή εργαλείων Τυπική:

##### Σε Basic

          oDoc = CreateScriptService("Document", ThisComponent)
          oToolbar = oDoc.Toolbars("standardbar")
          oToolbarButton = oToolbar.ToolbarButtons("Print")
          oToolbarButton.Execute()

##### Σε Python

          bas = CreateScriptService("Basic")
        doc = CreateScriptService("Document", bas.ThisComponent)
        toolbar = doc.Toolbars("standardbar")
        toolbar_button = toolbar.ToolbarButtons("Print")
        toolbar_button.Execute()

Όλες οι ρουτίνες ή αναγνωριστικά του ScriptForge στη Basic που έχουν το πρόθεμα χαρακτήρα υπογράμμισης "_" δεσμεύονται για εσωτερική χρήση. Δεν προορίζονται να χρησιμοποιηθούν σε μακροεντολές Basic ή σενάρια Python.

Σχετικά θέματα

Υπηρεσία SFWidgets.Toolbar