我的任务是为JavaFX应用程序设置样式/外观。我试图在CSS样式表中尽可能多地做,而不是在代码中。我有一个关于嵌套SplitPanes的问题:当呈现应用程序时,是否有任何内部SplitPane创建的内容在外部SplitPane和节点的父/子层次结构中的内部SplitPane之间进行。
这是一个模仿我的完整应用程序的小测试应用程序:
BorderPane root = new BorderPane();
root.setId("root");
Label mws_header = new Label("This is the header");
root.setTop(mws_header);
Label sidebar = new Label("This is the sidebar");
root.setLeft(sidebar);
SplitPane outer = new SplitPane();
outer.setId("mws_pano_360_split");
outer.setOrientation(Orientation.VERTICAL);
root.setCenter(outer);
Label bigGraphic = new Label("This is the top");
outer.getItems().add(bigGraphic);
SplitPane inner = new SplitPane();
inner.setId("flat_data_split");
inner.setOrientation(Orientation.HORIZONTAL);
Label label1 = new Label("This is the left");
Label label2 = new Label("This is the right");
inner.getItems().addAll(label1, label2);
outer.getItems().add(inner);
在CSS中,我想要做的是使用直接子语法进入内部SplitPane:
BorderPane > SplitPane > SplitPane {
/* all kinds of styling of background colors */
}
但相反,我要做的就是将其视为后代:
BorderPane > SplitPane SplitPane {
/* all kinds of styling of background colors */
}
那么外部SplitPane和内部SplitPane之间可能会出现什么?我希望有一个工具可以让你检查层次结构中的父/子节点,但到目前为止还没有找到它。