Настройка значка сцены - PullRequest
3 голосов
/ 19 марта 2019

Моим первым намерением было установить значок TextInputDialog.Но я начал с установки значка сцены.Я видел пару SO вопросов с изумительными ответами, содержащими обычно 2 строки кода.

Сначала я попытался поместить этот значок в / resources / icons, но появилось исключение "Неправильный URL или ресурс не найден".Чтобы не ошибиться при записи пути к файлу, я переместил этот значок в каталог / source / sample.Я использую код (я опубликую весь код):

public void start(Stage stage) throws Exception {

    FXMLLoader loaderModyfikacjaKonfiguracji = new FXMLLoader(getClass().getResource("FXMLModyfikacjaKonfiguracji.fxml"));
    Parent root = loaderModyfikacjaKonfiguracji.load();
    stage.setTitle("Modyfikacja konfiguracji");
    Image image = new Image("file:icon.png");
    //stage.getIcons().removeAll();
    stage.getIcons().add(image);

    ControllerModyfikacjaKonfiguracji controllerModyfikacjaKonfiguracji = loaderModyfikacjaKonfiguracji.getController();

    stage.setScene(new Scene(root, 510, 700));
    stage.show();
}

Везде это выглядит так просто, чтобы установить значок.Я тоже попробовал .jpg.не используется file: выдает исключение, используется file: компиляция, но я не вижу эффекта измененного значка.Что я делаю не так или в чем проблема?

1 Ответ

1 голос
/ 19 марта 2019

Я успешно использовал это, чтобы установить значок раньше

primaryStage.getIcons().add(new Image(getClass().getResourceAsStream("AppIcon.png")));

В моем случае, файл приложения fxml и AppIcon.png находятся в одном каталоге.

Если вы нехочу пойти по этому пути, я бы предложил попробовать

 Image image = new Image("file:./icon.png");

Но это предположение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...