El menú puede ocultarse o ocultarse automáticamente (como en Slack o VS Code ; puede presionar Alt para mostrar / ocultar el menú).
Métodos relevantes:
---- win.setMenu (menú) : establece el menú como la barra de menú de la ventana, si lo establece en nulo se eliminará la barra de menú. ( Esto eliminará el menú por completo )
mainWindow.setMenu(null)
---- win.setAutoHideMenuBar (ocultar) : establece si la barra de menú de la ventana debe ocultarse automáticamente. Una vez configurada, la barra de menú solo se
mostrará cuando los usuarios presionen la tecla Alt .
mainWindow.setAutoHideMenuBar(true)
Fuente: https://github.com/Automattic/simplenote-electron/issues/293
También existe el método para hacer una ventana sin marco como se muestra a continuación:
(sin botón de cierre ni nada. Puede ser lo que queramos (mejor diseño))
const { BrowserWindow } = require('electron')
let win = new BrowserWindow({ width: 800, height: 600, frame: false })
win.show()
https://electronjs.org/docs/api/browser-window#winremovemenu-linux-windows
Doc: https://electronjs.org/docs/api/frameless-window
Editar: (nuevo)
win.removeMenu()
Linux Windows Elimina la barra de menú de la ventana.
https://electronjs.org/docs/api/browser-window#winremovemenu-linux-windows
Se agregó win.removeMenu () para eliminar los menús de la aplicación en lugar de usar win.setMenu (nulo)
Eso se agrega desde v5 según:
https://github.com/electron/electron/pull/16570
https://github.com/electron/electron/pull/16657
Error de electron v7
Para Electron 7.1.1 use en Menu.setApplicationMenu
lugar dewin.removeMenu()
según este hilo:
https://github.com/electron/electron/issues/16521
Y la gran nota es: ¡tienes que llamarlo antes de crear la ventana del navegador ! ¡O no funcionará!
const {app, BrowserWindow, Menu} = require('electron')
Menu.setApplicationMenu(null);
const browserWindow = new BrowserWindow({/*...*/});
ACTUALIZAR (Configuración de autoHideMenuBar en la construcción de BrowserWindow)
¡Como por @kcpr comentario! Podemos establecer la propiedad y muchos en el constructor.
¡Eso está disponible en la última versión estable de electron que es 8.3!
¡Pero también en versiones antiguas verifiqué v1, v2, v3, v4!
¡Está ahí en todas las versiones!
Según este enlace
https://github.com/electron/electron/blob/1-3-x/docs/api/browser-window.md
Y para la v8.3
https://github.com/electron/electron/blob/v8.3.0/docs/api/browser-window.md#new-browserwindowoptions
El enlace del documento
https://www.electronjs.org/docs/api/browser-window#new-browserwindowoptions
Desde el documento de la opción:
autoHideMenuBar Boolean (opcional): oculta automáticamente la barra de menú a menos que se presione la tecla Alt. El valor predeterminado es falso.
Aquí un fragmento para ilustrarlo:
let browserWindow = new BrowserWindow({
width: 800,
height: 600,
autoHideMenuBar: true // <<< here
})
frame: false
lo hizo por mí.