Benutzerdefinierte Menüs für Editor-Add-ons
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Veröffentlichte Editor-Add-ons
können im Menü Erweiterungen des Editors benutzerdefinierte Menüelemente erstellen. Fügen Sie mit Ui.createAddonMenu ein Add-on-Menü ein und fügen Sie mit Menu.addItem Elemente hinzu. Menüs werden in der Regel in der onOpen-Methode des Add-ons erstellt.
Erstellen Sie dynamische Menüs, die sich je nach Nutzerinteraktionen oder Add-on-Status ändern. Add-ons müssen jedoch ein anfängliches Menü erstellen, bevor das Add-on vom Nutzer autorisiert wird. Prüfen Sie daher den
Autorisierungsmodus des Add-ons, bevor Sie Menüs in onOpen erstellen. Führen Sie keine Aktionen aus, für die
eine Autorisierung erforderlich ist (z. B. das Prüfen von
Properties), während sich das
Add-on in ScriptApp.AuthMode.NONE befindet. Weitere Informationen zu den Autorisierungsmodi und zum Lebenszyklus finden Sie unter
Lebenszyklus der Autorisierung.
Wenn Sie Aktionen ausführen, für die eine Autorisierung erforderlich ist, während der Autorisierungsmodus ScriptApp.AuthMode.NONE ist, führt dies zu einem Fehler. Dadurch werden Ihre Add-on-Menüs möglicherweise nicht angezeigt.
Im folgenden Beispiel wird gezeigt, wie Sie ein dynamisches Add-on-Menü für verschiedene Autorisierungsmodi erstellen:
functiononOpen(e){// Or DocumentApp, SlidesApp, or FormApp.varmenu=SpreadsheetApp.getUi().createAddonMenu();if(e && e.authMode==ScriptApp.AuthMode.NONE){// Add a normal menu item (works in all authorization modes).menu.addItem('Start workflow','startWorkflow');}else{// Add a menu item based on properties (doesn't work in AuthMode.NONE).varproperties=PropertiesService.getDocumentProperties();varworkflowStarted=properties.getProperty('workflowStarted');if(workflowStarted){menu.addItem('Check workflow status','checkWorkflow');}else{menu.addItem('Start workflow','startWorkflow');}// Record analytics.UrlFetchApp.fetch('http://www.example.com/analytics?event=open');}menu.addToUi();}
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2026-09-14 (UTC)."],[],["Editor add-ons create custom menu items under the **Extensions** menu using `Ui.createAddonMenu()` and `Menu.addItem()`, typically within the `onOpen(e)` method. Menus must be defined *before* user authorization, necessitating a check of the add-on's authorization mode. Dynamic menus can change based on user interactions. Actions requiring authorization should not be performed when `AuthMode.NONE`. The provided example shows a dynamic menu construction for different modes, adding either \"Start workflow\" or \"Check workflow status\".\n"]]