gpt4 book ai didi

javascript - 我如何使用谷歌脚本创建子菜单

转载 作者:行者123 更新时间:2023-11-29 22:19:11 24 4
gpt4 key购买 nike

我需要知道如何创建一个包含 2 个菜单项(AB)的简单菜单:第一个 (A) 包含 1 个项目 (A1 ),第二个(B),里面有3个项目(B1,B2,B3)

我可以创建一个示例,但总是失败:

代码

      var handler = app.createServerHandler();
//Create menu bar
var menuBar = app.createMenuBar(true);

var data = ss.getSheets()[LOG_SHEET_INDEX].getDataRange().getValues();

var lastRow = ss.getLastRow();
for(var row = 1; row < lastRow; row++){
var id_menu =1;
if(data[row][0]==0){
var nivel = data[row][1];
var menuItem = app.createMenuItem(data[row][2], handler);

var separator = app.createMenuItemSeparator();
menuBar.addSeparator(separator);
var subMenu = app.createMenuBar(true).setId("subMenu"+nivel);
for(var i = 1; i< lastRow; i++){
if(data[i][0]==nivel){
var sm = app.getElementById("subMenu"+nivel)
this[sm.addItem(data[row][2], handler)];
}

}menuItem.setSubMenu(sm);

}menuBar.addItem(data[row][2], app.createMenuBar(true));

}


app.add(menuBar);

结果

fail

我需要类似的东西(隐藏 A1、B1、B2、B3:当焦点 A|B 时显示):

    ____
A
A1
____
B
B1
B2
B3

这是我的传播:

fail2

请帮忙!!

最佳答案

嗯,正如 Serge 在我的上一篇文章中指出的那样。答案是错误的。同时我发现,真正的原因是:具有子菜单的 MenuItem 不能有处理程序:

 var menuBar=app.createMenuBar();
var subb1=app.createMenuBar(true);
subb1.addItem (app.createMenuItem("S1", handler1));
subb1.addItem (app.createMenuItem("S2", handler2));
var mi1=app.createMenuItem("X1", null); // passing null and not a handler makes submenu work...
mi1.setSubMenu(subb1);
menuBar.addItem(mi1);
app.add(menuBar);

关于javascript - 我如何使用谷歌脚本创建子菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13383464/

24 4 0