www說
2023-02-24 15:59:29
目標我正在嘗試從 Electron 應用程序的菜單中刪除Help菜單。我不想setApplicationMenu自己做,因為使用默認菜單很好,除了幫助,它指向 Electron 自己的幫助頁面。嘗試我嘗試了以下方法并在每種情況下都失敗了:去掉尾項,即Helpvar menu = Menu.getApplicationMenu();menu.items.pop();讓它不可見var menu = Menu.getApplicationMenu();for(var i=0; i<menu.items.length; i++) { if (menu.items[i].role == 'help') { menu.items[i].visible = false; break; }}刪除菜單mainWindow.removeMenu();這在我的 electron 版本 10.1.0 的 macOS 上不起作用。問題怎么了?我應該創建一個模板嗎?
2 回答

有只小跳蛙
TA貢獻1824條經驗 獲得超8個贊
Menu.setApplicationMenu修改默認菜單后必須使用
const menu = Menu.getApplicationMenu(); // get default menu
menu.items.find((item) => item.role === "help").visible = false; // modify it
Menu.setApplicationMenu(menu); // set the modified menu
注意:根據我的經驗,如果在應用程序事件之前調用它Menu.getApplicationMenu()將會返回nullready

吃雞游戲
TA貢獻1829條經驗 獲得超7個贊
menuItem.visible 在 Electron 13 中不起作用。相反,我構建了一個沒有幫助項的新菜單。
const menu = Menu.getApplicationMenu()
const items = menu?.items.filter((item) => item.role !== 'help')
Menu.setApplicationMenu(Menu.buildFromTemplate(items))
添加回答
舉報
0/150
提交
取消