Подтвердить что ты не робот

ScrollPanes в JavaFX 8 всегда имеют серый фон

Когда я обновил приложение JavaFX от JavaFX 2 до JavaFX 8, я заметил, что ScrollPanes всегда отображался как серые прямоугольники, даже если набор фоновых цветов или набор фона был прозрачным.

4b9b3361

Ответ 1

Я нашел решение в этом обсуждении: https://community.oracle.com/thread/3538169

Сначала мне это нужно:

.scroll-pane > .viewport {
   -fx-background-color: transparent;
}

Тогда я мог бы установить цвет фона в любое удобное для меня время. В этом случае я делаю все фон ScrollPane прозрачным:

.scroll-pane {
   -fx-background-color: transparent;
}

Ответ 2

Как только это произошло, он не работает с -fx-background-color, но с -fx-background

.scroll-pane {
   -fx-background: #FFFFFF;
   -fx-border-color: #FFFFFF;
}

Ответ 3

Подход к источнику:

После добавления к сцене/сцене вы можете отключить свойство width или height, чтобы получить доступ к стилю области просмотра.

    ScrollPane myPane = new ScrollPane();

    myPane.widthProperty().addListener((o) -> {
        Node vp = logMessagePane.lookup(".viewport");
        vp.setStyle("-fx-background-color:#434547;");
    });