系统托盘文本而不是图标

System tray text instead of icon

如何在系统托盘中显示文本而不是图标? 例如,我想显示一个百分比。

final TrayIcon trayIcon = new TrayIcon(createImage("image.png", "tray icon"));

上面的代码是设置一个图标,但是如何设置100%这样的文字显示在系统托盘中呢?这是专门针对 OSX.

您可以将文本绘制到图像上,尽管您仍在使用图像,但这样做就可以了。我认为没有其他方法可以做到这一点。

BufferedImage image = new BufferedImage(16, 16, BufferedImage.TYPE_INT_ARGB);
Graphics2D g2d = image.createGraphics();
g2d.drawString("100%", x, y);
g2d.dispose();
trayIcon.setImage(image);