Как создать заставку с прозрачным фоном в JavaFX
Я пытаюсь создать заставку, как пример, который я проверил.
Кажется, что AnchorPane не позволяет прозрачный фон, я попытался установить css AnchorPane
до -fx-background-color: rgba(255,0,255,0.1) ;
но белый фон все равно появляется.
все, что у меня есть в моем файле fxml, это AnchorPane с ImageView с содержимым png image
Я искал везде, но не могу найти никакого решения, любая помощь будет оценена. Спасибо
2 ответов
попробуй такое JavaFX splash sample создано для вопроса Stackoverflow:проектирование заставки (java). И следуйте вверх по образцу который также обеспечивает обратную связь хода инициализации приложения.
JavaFX предлагает Preloader интерфейс для плавной передачи от всплеска к приложению, но приведенные выше образцы не используют его.
образцы выплеска выше также не делают прозрачное эффект, но это
вы должны иметь прозрачный Stage
и Scene
для этого. Pane
сам по себе не имеет цвета.
public void start(Stage primaryStage) {
Button btn = new Button("Say 'Hello World'");
AnchorPane root = new AnchorPane();
root.getChildren().add(btn);
// Java 8: requires setting the layout pane background style to transparent
// https://bugs.openjdk.java.net/browse/JDK-8092764
// "Modena uses a non-transparent background by default"
root.setStyle("-fx-background-color: transparent;");
Scene scene = new Scene(root, 300, 250, Color.TRANSPARENT);
primaryStage.initStyle(StageStyle.TRANSPARENT);
primaryStage.setScene(scene);
primaryStage.show();
}