JavaFX 样式所有相同类型的节点,例如,VBox

Posted

技术标签:

【中文标题】JavaFX 样式所有相同类型的节点,例如,VBox【英文标题】:JavaFX style all nodes of the same type, e.g., VBox 【发布时间】:2016-05-19 08:33:19 【问题描述】:

我有很多 fxml 文件,其中包含不同类型的 javafx 节点,例如 VBox 等。我想知道是否可以向场景中添加样式表,该样式表会自动应用于在我的项目中任何位置声明的所有 VBox 元素(甚至以编程方式创建)。我知道buttons 很容易支持它,因为我可以在我的自定义 .css 文件中使用 .button ... 并将其添加到场景中。但是,对于许多节点类型(例如 VBox、HBox 等),我找不到任何类似的解决方案。

我在 modena.css 中寻找像 VBox 这样的 css 标签,它位于标准 jdk 的 jfxrt.jar 中的某个位置。不幸的是,我找不到这样的标签。我在 oracle 的网站上也找不到任何示例。

有什么办法吗? 感谢您的帮助。

【问题讨论】:

【参考方案1】:

我自己找到了解决方案。您可以将窗格的这个简单类名(例如 VBox)添加到您的 .css 文件中,如下所示:

HBox, VBox 
    //css instructions here
    -fx-background-color: red;

请注意,名称区分大小写;名称前不需要点。

【讨论】:

谢谢@Amin ???‍???

以上是关于JavaFX 样式所有相同类型的节点,例如,VBox的主要内容,如果未能解决你的问题,请参考以下文章

JavaFX 8 DatePicker 风格

如果节点超出 javafx 的边界,是不是可以自动调整窗格大小

JavaFX 样式类不会刷新

JavaFX ComboBox CSS 样式

禁用JavaFX中的所有父节点,同时保持其所有子节点可单击

对两个对象使用相同的 VBO 好吗?