Установить фоновое изображение для HBox - JavaFX - PullRequest
1 голос
/ 18 января 2020

Я не могу установить фоновое изображение для Hbox. Я попробовал это:

HBoxName.setStyle("-fx-background-image: images/background.png");

в методе инициализации, а затем я также попытался добавить стиль CSS в Scene Builder: -fx-background-image и url("images/background.png"). Как я могу это сделать?

1 Ответ

0 голосов
/ 19 января 2020

Есть несколько способов установить фоновое изображение для вашего HBox,

1. Использование CSS

  • Использование setStyle метод

    Использование setStyle() метод для прямой установки фонового изображения,

    HBoxName.setStyle("-fx-background-image: url('images/background.png');" +
            "-fx-background-repeat: stretch;" +
            "-fx-background-size: 1000 700;" +
            "-fx-background-position: center center;");
    
  • Использование внешнего CSS файла

    Вы должны создать внешний CSS файл, загрузить его на сцену (или вы можете загрузить CSS файл для любого элемента управления),

    scene.getStylesheets().add(
        this.getClass().getClassLoader().getResource("style.css").toString()
    );
    

    Добавьте эти стили в ваш файл style.css,

    #HBoxName{
       -fx-background-image: url("images/background.png");
       -fx-background-repeat: stretch;   
       -fx-background-size: 1000 700;
       -fx-background-position: center center; 
    }
    

    Ссылки

2. Настройка BackgroundImage с использованием setBackground()

Вы также можете установить фоновое изображение с помощью программного обеспечения.

BackgroundSize backgroundSize = new BackgroundSize(900,
        700,
        true,
        true,
        true,
        false);
BackgroundImage image = new BackgroundImage(new Image("image/background.png"),
        BackgroundRepeat.NO_REPEAT,
        BackgroundRepeat.NO_REPEAT,
        BackgroundPosition.CENTER,
        backgroundSize);

HBoxName.setBackground(new Background(image));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...