เมนูสามารถซ่อนหรือซ่อนอัตโนมัติ (เช่นในSlackหรือVS Code - คุณสามารถกด Alt เพื่อแสดง / ซ่อนเมนู)
วิธีการที่เกี่ยวข้อง:
---- win.setMenu (เมนู) - ตั้งค่าเมนูเป็นแถบเมนูของหน้าต่างการตั้งค่าเป็น null จะลบแถบเมนู (การดำเนินการนี้จะลบเมนูออกโดยสิ้นเชิง )
mainWindow.setMenu(null)
---- win.setAutoHideMenuBar (hide) - ตั้งค่าว่าจะให้แถบเมนูหน้าต่างซ่อนตัวเองโดยอัตโนมัติหรือไม่ เมื่อตั้งค่าแถบเมนูจะ
แสดงเมื่อผู้ใช้กดปุ่มเดียวปุ่ม Alt
mainWindow.setAutoHideMenuBar(true)
ที่มา: https://github.com/Automattic/simplenote-electron/issues/293
นอกจากนี้ยังมีวิธีการสร้างหน้าต่างไร้กรอบดังภาพต่อไปนี้:
(ไม่มีปุ่มปิดไม่มีอะไรสามารถเป็นสิ่งที่เราต้องการได้ (ดีไซน์ที่ดีกว่า))
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
แก้ไข: (ใหม่)
win.removeMenu()
Linux Windows ลบแถบเมนูของหน้าต่าง
https://electronjs.org/docs/api/browser-window#winremovemenu-linux-windows
เพิ่ม win.removeMenu () เพื่อลบเมนูแอปพลิเคชันแทนที่จะใช้ win.setMenu (null)
ที่เพิ่มจาก v5 ตาม:
https://github.com/electron/electron/pull/16570
https://github.com/electron/electron/pull/16657
ข้อผิดพลาด Electron v7
สำหรับ Electron 7.1.1 ใช้Menu.setApplicationMenu
แทนwin.removeMenu()
ตามหัวข้อนี้:
https://github.com/electron/electron/issues/16521
และหมายเหตุสำคัญคือคุณต้องเรียกมันก่อนสร้าง BrowserWindow ! หรือมันจะไม่ทำงาน!
const {app, BrowserWindow, Menu} = require('electron')
Menu.setApplicationMenu(null);
const browserWindow = new BrowserWindow({});
UPDATE (การตั้งค่า autoHideMenuBar บน BrowserWindow construction)
ตามที่ @kcpr คอมเม้น! เราสามารถตั้งค่าคุณสมบัติและหลายอย่างบนตัวสร้าง
มีอยู่ในอิเล็กตรอนที่เสถียรล่าสุดซึ่งตอนนี้คือ 8.3!
แต่ในเวอร์ชันเก่าฉันตรวจสอบ v1, v2, v3, v4 ด้วยเช่นกัน!
มีในทุกรุ่น!
ตามลิงค์นี้
https://github.com/electron/electron/blob/1-3-x/docs/api/browser-window.md
และสำหรับ v8.3
https://github.com/electron/electron/blob/v8.3.0/docs/api/browser-window.md#new-browserwindowoptions
ลิงค์ doc
https://www.electronjs.org/docs/api/browser-window#new-browserwindowoptions
จากเอกสารสำหรับตัวเลือก:
autoHideMenuBar Boolean (ทางเลือก) - ซ่อนแถบเมนูโดยอัตโนมัติเว้นแต่จะกดปุ่ม Alt ค่าเริ่มต้นเป็นเท็จ
นี่คือตัวอย่างเพื่อแสดงให้เห็น:
let browserWindow = new BrowserWindow({
width: 800,
height: 600,
autoHideMenuBar: true
})
frame: false
ทำเพื่อฉัน