Я хочу добавить значок программы для моего приложения JavaFX. Я знаю, как это сделать - у меня есть объект Stage, определенный как поле в главном классе приложения:
private Stage stage;
И затем в методе, который инициирует основную стадию, у меня есть фрагмент кода:
Scene scene = new Scene(rootLayout);
primaryStage.setScene(scene);
primaryStage.getIcons().add(new Image("file:view/images/programicon.png"));
primaryStage.show();
У меня есть пакет com.myapp.view
, и в этом пакете у меня есть другой пакет: com.myapp.view.images
, и я вставил значок, который хотел использовать, под названием programicon.png
. Ранее я написал неправильно:
primaryStage.getIcons().add(new Image("view/images/programicon.png"));
И я получил исключение:
Caused by: java.lang.IllegalArgumentException: Invalid URL or resource not found
at javafx.scene.image.Image.validateUrl(Image.java:1110)
Но когда я изменил URL-адрес на file:view/images/programicon.png
- теперь нет никаких исключений, но значок программы по-прежнему остается по умолчанию.
programicon.png
- это изображение 512x512 без фона.