我在google apps脚本中有一个功能,它从数据库中提取“事件”列表,并使用该列表创建一个名为“运行事件报告”的新菜单。我希望从该菜单中运行该事件的事件报告。
相关功能在这里:
function getEventsList(){
Logger.clear();
var ui = SpreadsheetApp.getUi();
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var urls = urlBuilder();
var token = getToken(ui, urls.getAuthServiceUrl());
var accountId = getDataFromApi(urls.getAccountsListUrl(), token)[0].Id;
var EventsCount = getDataFromApi(urls.getEventsCountUrl(accountId), token);
var EventList = getDataFromApi(urls.getEventsListUrl(accountId), token);
var menu = ui.createMenu('Run Event Report')
for (var y = 0; y < EventsCount.Count-1; y++) {
var name = EventList.Events[y].Name;
var startDate = EventList.Events[y].StartDate;
var str = name + " (" + startDate.slice(0,10) + ")";
menu.addItem(str, 'runEventReport(' + y + ')');
}
menu.addToUi();
}
问题是,创建的菜单比屏幕高度长,并且似乎没有滚动功能。所以我无法在菜单中进一步访问这些项目。
是否有可能在Google Apps脚本创建的菜单中启用滚动功能?
答案 0 :(得分:0)
经过一段时间的搜索并遇到此问题之前,我认为它不是设计用于在一个菜单中提供大量菜单项;但是,您可以在this / if语句中添加一个循环,并将它们放入子菜单项(如嵌套列表)中。 它解释了子菜单项如何在这里工作:Google Menu Item。
如果你想要一个如何做到这一点的例子让我知道,我会在这里为你举一个例子。
希望有所帮助。
祝你好运:)