我正在尝试为mac node-webkit app创建一个菜单。我正在尝试将首选项菜单项附加到第一个/根菜单(应用程序名称>关于,首选项等)。我一直无法弄清楚如何访问.createMacBuiltin();功能创造。我只能创建一个新的自定义菜单。有没有人想出如何做到这一点。有关示例,请参阅Slack的mac应用程序。到目前为止,这是我的代码。
var gui = require('nw.gui');
// Create menu container
var Menu = new gui.Menu({
type: 'menubar'
});
Menu.createMacBuiltin("Example App");
Menu.append(
new gui.MenuItem({
label: 'Preferences',
click : function () {
$('#preferences').modal('toggle');
}
})
);
gui.Window.get().menu = Menu;
感谢您的帮助。
答案 0 :(得分:2)
我用以下代码解决了这个问题。这只是一个根源并找到正确的菜单来追加或插入的问题。我使用菜单打开一个包含用户首选项的模式。
var gui = require('nw.gui');
// Create menu container
var Menu = new gui.Menu({
type: 'menubar'
});
//initialize default mac menu
Menu.createMacBuiltin("MyApp");
// Get the root menu from the default mac menu
var rootMenu = Menu.items[0].submenu;
// Append new item to root menu
rootMenu.insert(
new gui.MenuItem({
label: 'Preferences',
click : function () {
$('#preferences').modal('toggle');
}
})
);
// Append Menu to Window
gui.Window.get().menu = Menu;