electron的托盘Tray

1.在主进程文件background.js中引入需要的文件

bash 复制代码
import { Tray, Menu } from "electron";
const path = require("path");

2.获取托盘图标

bash 复制代码
const baseSRC = process.cwd(); //这里不能使用__dirname,使用dirname会直接获取dist_electron中的文件,我们需要的文件在public文件中
const filePath = path.join(baseSRC, "/public/favicon.ico");

3.创建tray

bash 复制代码
let tray = null;
app.on("ready", async () => {
  tray = new Tray(filePath);
  const contextMenu = Menu.buildFromTemplate([
    { label: "Item1", type: "radio" },
    { label: "Item2", type: "radio" },
    { label: "Item3", type: "radio", checked: true },
    { label: "Item4", type: "radio" },
  ]);
  tray.setToolTip("This is my application.");
  tray.setContextMenu(contextMenu);

  tray.on("click", () => {
    //给托盘绑定点击事件
  });
  createWindow();
});
相关推荐
爱分享的程序员3 分钟前
前端面试专栏-算法篇:20. 贪心算法与动态规划入门
前端·javascript·node.js
我想说一句4 分钟前
事件委托与合成事件:前端性能优化的"偷懒"艺术
前端·javascript
爱泡脚的鸡腿6 分钟前
Web第二次笔记
前端·javascript
良辰未晚6 分钟前
Canvas 绘制模糊?那是你没搞懂 DPR!
前端·canvas
Dream耀11 分钟前
React合成事件揭秘:高效事件处理的幕后机制
前端·javascript
P7Dreamer11 分钟前
Vue 3 + Element Plus 实现可定制的动态表格列配置组件
前端·vue.js
洋流11 分钟前
0基础进大厂,第12天:ES6语法基础篇
javascript
I'm写代码14 分钟前
el-tree树形结构笔记
javascript·vue.js·笔记
万少15 分钟前
最新 HarmonyOS API 20 知识库 重磅推出
前端
蓝易云22 分钟前
CentOS 7上安装X virtual framebuffer (Xvfb) 的步骤以及如何解决无X服务器的问题
前端·后端·centos