electron + nodejs (自定義菜單)

  1. 新建菜單文件menu.js
    // 製作菜單
    
    const { Menu } = require('electron');
    
    // 1. 設置模板
    let template = [
        // 文件
        {
            label:'文件',
            // 子菜單
            submenu:[ 
                // 新建文件
                {
                    label:'新建文件',
                    // 動態綁定快捷鍵
                    accelerator:( function(){
                        // mac
                        if (process.platform == 'darwin'){
                            return 'ctrl+commad+M';
                        }else {
                            return 'ctrl+alt+M'
                        }
                    })(),
                    // 綁定事件
                    click:function () {
                       console.log("new File");     
                    }
                },
                {
                    type: 'separator'
                },
                // 新建窗口
                {
                    label:'新建窗口',
                    // 設置選中類型
                    type:'checkbox',
                    // 設置選中
                    checked:true,
                    // 綁定快捷鍵
                    accelerator:'alt+ctrl+Z',
                    // 綁定事件
                    click:function () {
                        console.log("new Window");     
                     }
                }
            ]
        },
        //編輯
        {
            label:'編輯'
        }
    ];
    
    // 2. 構建菜單 (實例化一個菜單對象)
    let menu = Menu.buildFromTemplate(template);
    
    // 3. 把菜單對象設置到應用中
    Menu.setApplicationMenu(menu);
    
  2. 在主窗口渲染後調用菜單文件

       // 關閉窗口
       win.on('close',function () {
           //TODO: 關閉窗口前想做的事
    
           win = null;
       })
    
       // 引入自定義菜單文件
       require('./menu')

     

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章