@icenet/electron-window
Version:
主要针对使用 electron-vite 初始化的项目做的插件,点击[这里](https://cn-evite.netlify.app/),必在 electron-vite 的基础上使用,针对 electron-vite 中打开新的无边框窗口缓慢、传参困难等问题做的优化,安装方式简单、使用简单
39 lines (31 loc) • 1.03 kB
JavaScript
;
const { Menu, Tray } = require("electron");
const { join } = require("path");
/**
* 创建系统托盘图标
* @param {*} toolTip 托盘图标名称
* @param {*} icon 托盘图标
* @param {*} dirname 图标绝对路径
* @param {*} menuTemplate 托盘配置项
*/
const createTray = (
toolTip,
icon = "../../build/icon.ico", // 加载默认图标
dirname,
menuTemplate
) => {
// 创建托盘菜单
const menu = Menu.buildFromTemplate(menuTemplate);
// 系统托盘(窗口必须提前创建,否则找不到图标,创建过的窗口图标保存在自定义或默认的目录下)
const appTray = new Tray(join(dirname, icon));
// 绑定托盘菜单
appTray.setContextMenu(menu);
// 系统托盘的提示文本
appTray.setToolTip(toolTip);
// 系统托盘右键点击事件
// appTray.on("right-click", () => {
// // 显示系统托盘菜单
// appTray.popUpContextMenu(menu);
// });
};
module.exports = { createTray };