Это лучший способ обработки всех изображений и значков в приложении JAR.
После того, как вы заархивировали все свои изображения и значки в отдельный файл JAR, настройте путь сборки, добавив файл JAR изображений на вкладку библиотек, чтобы он теперь был включен в ваш путь к классам.
Затем просто используйте следующие 3 строки кода в начале вашего конструктора, чтобы получить доступ к любому изображению, которое вам нужно для чего угодно, включая изображение SystemTray, которое не принимает простой ImageIcon в качестве основного значка (странно, я знаю ). 3x строки:
URL iconUrl = this.getClass().getResource("/image-iconb.png");
Toolkit tk = this.getToolkit();
someimgicon = tk.getImage(iconUrl);
(someimgicon — это просто объявленная конструктором переменная Image) Теперь вы можете установить значок окна так же просто, как:
setIconImage(someimgicon);
и одновременно используйте одну и ту же переменную при установке System TrayIcon, объявив:
trayIcon = new TrayIcon(someimgicon, "SystemTray Demo", popupMenu);
Вышеупомянутое позволяет вам легко и централизованно объявлять изображения или значки изображений, не рискуя не хранить ресурсы изображения в нужном месте. Это делает его красивым и аккуратным, а JAR, содержащий все ваши изображения, автоматически компилируется во время выполнения и распространения вашей программы.
В качестве бонуса, как только JAR зарегистрирован в пути к классам, вы можете продолжать добавлять любые другие изображения в тот же JAR в любое время без какой-либо суеты. Все просто работает, а добавленные изображения мгновенно доступны для ваше приложение.
На мой взгляд гораздо лучше.
person
Martin Sansone - MiOEE
schedule
30.12.2014