如何为 JavaFX Scene Builder 节点和 CSS 中的 类 风格化 JFoenix?

How to stylize JFoenix for JavaFX Scene Builder nodes and classes in CSS?

我正在尝试将我的自定义值添加到 CSS 样式表中的 JFXButton 属性 class,但我无法使这些工作:

.eliminarBtn {
    -fx-background-color: #eb490f; //This work
    -fx-font-color: WHITE; //This doesn't work
    -fx-font-weight: bold; //This doesn't work. Edit: had to refresh(works) 
    -fx-font-size: 20px; //this work
    -fx-background-radius: 8px; //This work
}

在这种情况下,我知道它的一些值,因为 Scene Builder 有一个下拉菜单可供选择,然后我可以在样式表中输入它。其他人我尝试使用 HTML 标准和 -fx- 并希望拥有它 运行 但它没有。那么如何为按钮文本添加粗细和颜色呢?顺便说一句,我也可以为我需要的任何按钮节点设置 CSS classes。

此外,如果您有 JavaFX 样式 and/or JFoenix 组件的指南,请加我 link。谢谢

使用 Scene Builder 时,右侧的属性面板会告诉您可以修改的选项:例如,您可以在 "Text Fill" 区域填充文本。但是,要实现代码,您必须像这样添加 fx:

-fx-text-fill: #colorvalue;

其他修饰符依此类推。但是,有些修饰符接受超过 1 个我不知道的值。也许那些格式遵循 css 规则,你也必须从那里开始。

您可以查看 JavaFX CSS Reference Guide 以获取有关 JavaFX 组件样式 类 及其默认值的更多信息。

JFXButton 扩展了 JavaFX 的 Button 并且它似乎只添加了一个额外的 CSS 属性 即 -jfx-button-type,两个可能的值是 FLAT(默认)和 RAISED。回答您的问题,您可以使用以下 CSS:

更改 JFXButton 文本的颜色和粗细
.button {
    -fx-text-fill: WHITE;
    -fx-font-weight: BOLD;
}

可以像这样在 CSS 中创建凸起的 JFXButton

JFXButton raisedButton = new JFXButton("RAISED BUTTON");
button.getStyleClass().add("button-raised");
.button-raised {
    -jfx-button-type: RAISED;
    -fx-background-color: TURQUOISE;
    -fx-text-fill: WHITE;
    -fx-font-weight: BOLD;
}