java - 如何使用 javafx/css 和 fxml 将 StackPane 节点的背景颜色设置为透明

标签 java css javafx scenebuilder

正在尝试为我的 BorderPane 创建阴影。我需要使用 StackPane 为投影留出空间。问题是我似乎无法将 StackPane 的背景设置为透明。我为我的 primiaryStage 使用透明样式。

还有其他使用 javaFX 的示例,但在使用 fxml 时我无法弄清楚。

.StackPane{
  -fx-background-color: transparent;
}

这仍然在我的 BorderPane 后面显示白色背景

public class Main extends Application {


    public static Stage Window;

    @Override
    public void start(Stage primaryStage) throws IOException{
        Main.Window = primaryStage;
        Window.initStyle(StageStyle.TRANSPARENT);
        Window.setResizable(false);
        FXMLLoader loader = new FXMLLoader(getClass().getResource("Homepage.fxml"));
        Parent root = loader.load();    
        Window.setScene(new Scene(root));
        root.getStylesheets().add(getClass().getResource("main.css").toExternalForm());

        Window.show();
    }

enter image description here

最佳答案

我发现在使用滚动 Pane 时,它会在运行时在其下方动态创建堆栈 Pane 。使用风景 View ,我能够看到样式类名称为“viewport”,并且可以通过这种方式更改背景颜色。

关于java - 如何使用 javafx/css 和 fxml 将 StackPane 节点的背景颜色设置为透明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41018569/

相关文章:

java - Netbeans 与 JDeveloper 中的 Swing 开发

java - JACOB 库的有效 COM 结构是什么?

javascript - tinymce 在换行符上用 h1 替换主题标签 '#'

java - JavaFX ListView 控件的项目更改事件

3d - JavaFX 3D 透明度

64-bit - 加载错误的jvm.dll

java - 从 PostgreSQL 流式传输行(带获取大小)

javascript - 如何监控用户点击了什么

css - 如何制作梯形的渐变div?

java - 初始化使用 SceneBuilder 创建的 WebView