如何从电子应用程序中删除此菜单栏:

它还说“Hello World”(这是因为我下载了电子预构建,一旦我打包应用程序就会消失吗?)我没有编码这些到html,所以我不知道如何得到它!-


当前回答

@"electron": "^7.1.1" : 

mainWindow = new browserWindow({ height: 500, width: 800});
//mainWindow.setAutoHideMenuBar(true);
mainWindow.autoHideMenuBar = true;

在浏览器中没有菜单的情况下正常工作。

其他回答

在main.js的这一行之前:

mainWindow = new BrowserWindow({width: 800, height: 900})

mainWindow.setMenu(null) //this will r menu bar

这些解决方案有缺陷。 当使用以下溶液时,窗口在关闭时有延迟。

Menu.setApplicationMenu(null),
&&
const updateErrorWindow = new BrowserWindow({autoHideMenuBar: true});

我使用的溶液在下面。现在这样比较好。

const window= new BrowserWindow({...});
window.setMenuBarVisibility(false);

当你打包你的应用程序时,默认菜单将不再存在,如果这在开发过程中让你感到困扰,那么你可以像@TonyVincent建议的那样在浏览器窗口上调用setMenu(null)。

根据官方文档@ https://github.com/electron/electron/blob/v8.0.0-beta.1/docs/api/menu.md,从7.1.2开始正确的方法是这样做的,我已经在8.0上测试过了:

const { app, Menu } = require('electron')

Menu.setApplicationMenu(null)

这里的大多数答案对于新版本无效。对于9.0或更高版本,Menu.setApplicationMenu(null);应该工作。顺便说一下,Menu从electron package导出:const {Menu} = require('electron');