无法在Preloader中将舞台设置为透明

问题描述

我正在尝试创建一个简单的启动屏幕。实际上,我有一个带有图像作为背景的栈板。我不想显示认的javafx装饰。

所以我尝试了StageStyle.TRANSPARENT,但它使整个过程变得透明。另一方面,StageStyle.UNDECORATED显示图像但带有白色背景。这是我的启动方法中的代码

public class SplashScreen extends Preloader {

    private Stage stage;  

    @Override
    public void start(Stage stage) throws Exception {
    
        this.stage = stage;        
        StackPane root = (StackPane) FXMLLoader.load(getClass().getClassLoader().getResource("layouts/splash.fxml"));        
        Scene scene = new Scene(root,690,380,true,SceneAntialiasing.BALANCED);
        scene.setFill(Color.TRANSPARENT);
        stage.initStyle(StageStyle.TRANSPARENT);
        stage.setScene(scene);
        stage.show();
    
    }
...

我正在使用java 11.0.8和javafx 14

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)