electron录制工具-系统托盘

要求

1、两个状态控制开始录制、结束录制

2、退出应用

3、当录制状态时,切换另一个状态【结束录制】,反之显示【开始录制】

效果

electron录制-系统托盘-演示

代码

复制代码
function createTray(init = 0) {
	if (tray) {
		console.log("Tray already created!");
		return
	}
	tray = new Tray(path.join(process.env.VITE_PUBLIC,  init === 0 ? 'tray-icon-start.png' : 'tray-icon-stop.png'));
	const startItem = {
		label: 'Start Record',
		click: function () {
			console.log("Start Record");
			tray?.destroy()
			tray = null
			createTray(1)
		}
	}
	const stopItem = {
		label: 'Stop Record',
		click: function () {
			console.log("Start Record");
			tray?.destroy()
			tray = null
			createTray(0)
		}
	}
	const contextMenu = Menu.buildFromTemplate([
		init === 0 ? startItem : stopItem,
		{
			label: 'Quit',
			role: 'quit'
		}
	]);

	tray.setToolTip('AV CRAFT');
	tray.setContextMenu(contextMenu);
}

Git地址

相关推荐
IT_陈寒2 小时前
SpringBoot自动配置揭秘:90%开发者不知道的核心原理
前端·人工智能·后端
huangyiyi666662 小时前
webpack + Vite
前端·webpack·node.js
im_AMBER2 小时前
订阅模式实现字符数统计
前端·typescript·前端框架·编辑器
北寻北爱2 小时前
axios
开发语言·前端·javascript
Nuopiane2 小时前
Mypal3(9)
前端·javascript·数据库
筱璦2 小时前
期货软件开发 - 交易报表
前端·windows·microsoft·报表·期货
暴躁网友w2 小时前
掌握Fetch与Flask交互:让前端表单提交更优雅的动态之道
前端·flask·交互
钰衡大师2 小时前
Vue 3 源码阅读笔记:ref.ts
javascript·vue.js·笔记·vue3源码阅读
木斯佳2 小时前
前端八股文面经大全:腾讯前端暑期提前批一、二、三面面经(上)(2026-03-04)·面经深度解析
前端
嘉琪0012 小时前
Day4 完整学习包(this 指向)——2026 0313
前端·javascript·学习