Yayınlanan Düzenleyici Eklentileri, düzenleyicilerinin Uzantılar menüsünde özel menü öğeleri oluşturabilir. Şunları yapabilirsiniz:
bir eklenti menüsü eklemek için
Ui.createAddonMenu()
yöntem
ve
Menu.addItem()
yöntemidir. Menüler genellikle eklentinin onOpen(e)
yöntemiyle oluşturulur.
Kullanıcı etkileşimlerine veya eklentiye göre değişen dinamik menüler oluşturabilirsiniz
durumu. Ancak eklentiler, kullanıcı tarafından yetkilendirilmeden önce ilk menüyü oluşturmalıdır. Bu nedenle,
yetkilendirme modu
onOpen(e)
ile menüler oluşturmadan önce. Hiçbir işlem yapmaya çalışmayın
veya
Properties
)
Eklenti ScriptApp.AuthMode.NONE
sürümündeyken. Yetkilendirme modları ve yaşam döngüsü hakkında daha fazla bilgi için yetkilendirme yaşam döngüsü bölümüne bakın.
Aşağıdaki örnekte, farklı web siteleri için dinamik eklenti menüsünün nasıl oluşturulacağı yetkilendirme modları:
function onOpen(e) {
var menu = SpreadsheetApp.getUi().createAddonMenu(); // Or DocumentApp or SlidesApp or FormApp.
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).
var properties = PropertiesService.getDocumentProperties();
var workflowStarted = 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();
}