electron macOS菜单栏中的电子编号小工具

q8l4jmvw  于 2022-12-08  发布在  Electron
关注(0)|答案(1)|浏览(172)

我目前正在寻找一种在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并没有将他们的小部件渲染为图像。

mf98qq94

mf98qq941#

在macOS中,Electron有一种(有限的)方式可以将文本放在托盘图标旁边:

// API: tray.setTitle(title[, options])
tray.setTitle("foo")

不幸的是,这似乎是最远的。作为一个抽象层,使跨平台开发更容易,电子往往不能提供所有的操作系统的原生特性。
iStat没有使用Electron框架(仅适用于macOS)。请查看this question,了解如何使用Apple的可可框架在状态栏中写入多行文本。

相关问题