我目前正在寻找一种在macOS菜单栏中显示数值的方法。像iStat Menus 6这样的工具表明,可以在macOS菜单栏中显示数值和图表等高级小部件,请参阅here。
我想在我的电子应用程序中创建一个数字小部件。但是,我找不到开始的方法。我找到的是电子包中的Tray类。它允许使用png之类的图像创建一个托盘图标:
const path = require('path');
const {
app,
Menu,
Tray,
} = require('electron');
let tray = null;
app.on('ready', () => {
tray = new Tray(path.join(__dirname, '/Icon.png'));
if (process.platform === 'win32') {
tray.on('click', tray.popUpContextMenu);
}
const menu = Menu.buildFromTemplate([
{
label: 'Quit',
click() { app.quit(); }
}
]);
tray.setToolTip('Clipmaster');
tray.setContextMenu(menu);
});
像iStat这样的应用程序是如何创建如此强大的小部件的?看起来iStat并没有将他们的小部件渲染为图像。
1条答案
按热度按时间mf98qq941#
在macOS中,Electron有一种(有限的)方式可以将文本放在托盘图标旁边:
不幸的是,这似乎是最远的。作为一个抽象层,使跨平台开发更容易,电子往往不能提供所有的操作系统的原生特性。
iStat没有使用Electron框架(仅适用于macOS)。请查看this question,了解如何使用Apple的可可框架在状态栏中写入多行文本。