【问题标题】:How to change color of selected RadioButton in JavaFX [CSS]?如何在 JavaFX [CSS] 中更改选定 RadioButton 的颜色?
【发布时间】:2019-05-03 23:38:52
【问题描述】:

我只想更改 RadioButton 上填充圆的颜色。令人惊讶的是,我在文档中找不到这个。有可能吗?

我发现这个类似的帖子有一个不适合我的解决方案:CSS Change radio button color in JFXRadioButton

这是我尝试过的方法(也尝试了其他变体无济于事):

.radio-button .radio {
    -fx-selected-color: yellow;
    -fx-unselected-color: blue;
}

【问题讨论】:

  • 这里是 RadioButton 的 CSS 文档:openjfx.io/javadoc/12/javafx.graphics/javafx/scene/doc-files/…。它继承自ToggleButton,这意味着它具有selected 伪类。
  • @SamuelPhilipp 是的,只是按钮中心点的颜色(默认为黑色)
  • @Slaw 我已经尝试将 :selected 添加到标题中,但它仍然不起作用
  • 属性-fx-selected-color-fx-unselected-color 不存在。文档指出 radiodot 都是 Regions(在 Substructure 部分中),这意味着您可以使用 -fx-background-color 设置背景颜色。

标签: java javafx scenebuilder


【解决方案1】:

-jfx-selected-color-jfx-unselected-color 未在 JavaFX 中定义。它们是来自 JFoenix (docs) 的属性。此外,-fx-selected-color-fx-unselected-color 在 JavaFX 中不可用。

要更改 RadioButton 中点的颜色,您可以像这样使用 :selected 伪类 (docs):

.radio-button:selected .radio .dot {
    -fx-background-color: red;
    -fx-background-insets: 0;
}

除了-fx-background-color,您还应该设置-fx-background-insets: 0;,否则圆点不再完全位于中心。

结果将如下所示:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-08-03
    • 2014-08-23
    • 1970-01-01
    • 1970-01-01
    • 2015-12-04
    • 2020-09-04
    • 1970-01-01
    • 2021-08-07
    相关资源
    最近更新 更多