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地址

相关推荐
excel33 分钟前
用 TensorFlow.js Node 实现猫图像识别(教学版逐步分解)
前端
gnip1 小时前
JavaScript事件流
前端·javascript
小菜全1 小时前
基于若依框架Vue+TS导出PDF文件的方法
javascript·vue.js·前端框架·json
赵得C1 小时前
【前端技巧】Element Table 列标题如何优雅添加 Tooltip 提示?
前端·elementui·vue·table组件
wow_DG1 小时前
【Vue2 ✨】Vue2 入门之旅 · 进阶篇(一):响应式原理
前端·javascript·vue.js
weixin_456904271 小时前
UserManagement.vue和Profile.vue详细解释
前端·javascript·vue.js
资深前端之路1 小时前
react 面试题 react 有什么特点?
前端·react.js·面试·前端框架
aaaweiaaaaaa1 小时前
HTML和CSS学习
前端·css·学习·html
秋秋小事2 小时前
React Hooks useContext
前端·javascript·react.js
Jinuss2 小时前
Vue3源码reactivity响应式篇之reactive响应式对象的track与trigger
前端·vue3