electron关闭隐藏到托盘

发布时间 2023-04-23 14:28:34作者: zhang_you_wu

main.js中的主要代码

// ************* 实现点击关闭是系统托盘start*********************** 
     // 当我们点击关闭时触发close事件,我们按照之前的思路在关闭时,隐藏窗口,隐藏任务栏窗口
     // event.preventDefault(); 禁止关闭行为(非常必要,因为我们并不是想要关闭窗口,所以需要禁止默认行为)
      win.on('close', (event) => {
      win.hide();
      win.setSkipTaskbar(true);
      event.preventDefault();
    });
// ************* 实现点击关闭是系统托盘end*********************** 

同时我们需要在托盘菜单上设置一个真正的退出

//创建托盘菜单
  const menu= Menu.buildFromTemplate([
      {
        label:'调试',
        click:()=>{
          // 打开开发者工具
          win.webContents.openDevTools()
        }
      },
     {
      label:'显示主界面',
      click:()=>{
        //显示主窗口
        win.show();
      }
    },
    {
      label:'退出',
      click:()=>{
        //app.quit();
        win.destroy();//我们需要在这里有一个真正的退出(这里直接强制退出)
      }
    }
  ])
  //绑定托盘菜单
  tray.setContextMenu(menu);