如何使用setStyle()

时间:2018-10-28 13:26:24

标签: java javafx javafx-css

让我简短一点。

所以。我知道您可以在CSS中为CheckBox的.box设置样式,例如:

.check-box > .box {
    -fx-background-color: white;
}

但是我不确定如何内联。请只提供示例代码。谢谢。

1 个答案:

答案 0 :(得分:1)

内联样式仅适用于节点本身,不适用于子代。除非您愿意使用lookup访问子节点,否则将无法直接使用嵌入式样式为子节点设置样式。这仅在创建外观之后才起作用,但是如果要从fxml / controller initialize进行操作,通常会在第一次布局传递之前发生,这可能会导致此问题。

modena.css包含以下({)}集中.box的{​​{1}}子元素的声明:

CheckBox
-fx-background-color: -fx-shadow-highlight-color, -fx-outer-border, -fx-inner-border, -fx-body-color;

即它包含从父级继承的 的查找颜色,因此可以使用-fx-background-color: -fx-focus-color, -fx-inner-border, -fx-body-color, -fx-faint-focus-color, -fx-body-color; 上的内联css进行分配:

CheckBox