Фрагмент моего кода ниже:Java.awt.SystemTray не отображает иконку в трее правильно
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
- это файл изображения, который загружен правильно (но не null). Я думал, что файлы значков в системном трее могут быть 40 пикселей?
Может кто-нибудь, пожалуйста, объясните мне, в чем проблема?
Вау, я полностью пропустил эту функцию. Благодаря! – user1418454
Я типа, который любит читать исходный код, поэтому я пошел и нашел [реализацию Windows] (http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/7-b147 /sun/awt/windows/WTrayIconPeer.java#WTrayIconPeer) TrayIcon. Похоже, что он нацелен на 16x16, если вы не включили автозапуск. – Jim