Electron系统托盘使用

const { app, BrowserWindow, Menu, Tray } = require('electron')

const path = require('path')
let tray = null
function createWindow() {
  const win = new BrowserWindow({
    width: 1200,
    height: 600,
    webPreferences: {
      nodeIntegration: true,
      contextIsolation: false,
      enableRemoteModule: true, // 使用remote模块
      preload: path.join(__dirname, 'preload.js')
    }
  })

  win.loadFile('index.html')
  win.webContents.openDevTools();
  // 引入的自定义菜单

  tray = new Tray('./static/Clover.png')
  const contextMenu = Menu.buildFromTemplate([

    {
      label: '最大化', click: function () {
        win.maximize()
      }
    },
    {
      label: '最小化', click: function () {
        win.minimize()
      }
    },
    {
      label: '退出', click: function () {
        // win.destroy()
        app.quit()
      }
    }
  ])
  tray.setToolTip('晓果electorn')
  tray.setContextMenu(contextMenu)
  // 点击托盘图标,显示主窗口
  tray.on("click", () => {
    win.show();
  })
  //双击打开应用
  tray.on('double-click', () => {
    win.show()
  })
    //实现点击关闭按钮 让应用保存在托盘里面,双击托盘打开应用
  win.on('close', (e) => {
    console.log('close--------')
    if (win.isMinimized()) {
      win = null;
    } else {
      e.preventDefault();
      win.minimize();
    }

  });
}

app.whenReady().then(() => {
  createWindow()

  app.on('activate', () => {
    if (BrowserWindow.getAllWindows().length === 0) {
      createWindow()
    }
  })

})

app.on('window-all-closed', () => {
  if (process.platform !== 'darwin') {
    app.quit()
  }
})




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值