【问题标题】:Java.awt.SystemTray does not display tray icon properlyJava.awt.SystemTray 无法正确显示托盘图标
【发布时间】:2012-06-04 22:08:28
【问题描述】:

我的代码的 sn-p 如下:

SystemTray systray = SystemTray.getSystemTray();

try{
    TrayIcon trayicon = new TrayIcon(new ImageIO.read(new File("icon.png")),"I am a description");
}
catch(IOException e) {
    e.printStackTrace();
}

一切顺利,但系统托盘中显示的图像被切断。除非我缩小到 16x16(从 40x40),否则只显示左上部分。 icon.png 是正确加载的图像文件(非空)。我认为系统托盘图标文件可能是 40px?

有人可以向我解释一下这里有什么问题吗?

【问题讨论】:

    标签: java swing icons awt system-tray


    【解决方案1】:

    可能的情况包括TrayIcon.setImageAutoSize(),也许您的操作系统(假设是 Windows)设置为某种高 dpi 显示,如 120 或 144,而 Java 无法正确适应。

    【讨论】:

    • 哇,我完全错过了这个功能。谢谢!
    • 我是喜欢阅读源代码的类型,所以我去找了TrayIcon的windows implementation。如果您没有打开自动调整大小,它看起来像 16x16。
    猜你喜欢
    • 1970-01-01
    • 2015-09-04
    • 1970-01-01
    • 2020-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多