如何将子菜单项添加到Google电子表格菜单

时间:2013-02-19 17:41:46

标签: google-apps-script

从这个教程: https://developers.google.com/apps-script/articles/helpdesk_tutorial

以下代码添加了一个菜单项,并在该菜单项下添加了一个子菜单项。这是正常的,我对结果很满意。

function onOpen() {
  var subMenus1 = [{name:"Send Status Email", functionName: "emailStatusUpdates"}];
  SpreadsheetApp.getActiveSpreadsheet().addMenu("Help Desk Menu", subMenus1);
}​

我想添加一个额外的子菜单项,我试过这个:

function onOpen() {
  var subMenus1 = [{name:"Send Status Email", functionName: "emailStatusUpdates"}];
  var subMenus2 = [{name:"Open GUI", functionName: "fLoadGUI"}];
  SpreadsheetApp.getActiveSpreadsheet().addMenu("Help Desk Menu", subMenus1);
  SpreadsheetApp.getActiveSpreadsheet().addMenu("Help Desk Menu", subMenus2);
}​

我也试过这个:

function onOpen() {
  var subMenus1 = [{name:"Send Status Email", functionName: "emailStatusUpdates"}];
  var subMenus2 = [{name:"Open GUI", functionName: "fLoadGUI"}];
  SpreadsheetApp.getActiveSpreadsheet().addMenu("Help Desk Menu", subMenus1, subMenus2);
}

我的上述尝试都失败了。 我怀疑我应该使用“additem”方法,但我不确定因此我的问题在这里。我想知道是否有人能够指出我正确的方向。

托尼欢呼道气

1 个答案:

答案 0 :(得分:3)

你只需要添加一次菜单,但可以有多个项目。(用逗号分隔对象)

function onOpen() {
  var subMenus = [{name:"Send Status Email", functionName: "emailStatusUpdates"},
                  {name:"Open GUI", functionName: "fLoadGUI"}
                  ];
  SpreadsheetApp.getActiveSpreadsheet().addMenu("Help Desk Menu", subMenus);
}