【问题标题】:Resize ToggleButton in JavaFX在 JavaFX 中调整切换按钮的大小
【发布时间】:2014-12-16 09:40:48
【问题描述】:

我在 HBox 中添加了一个单选按钮。 问题是,我无法调整单选按钮的大小...

我没有单选按钮的标题,我只需要按钮。问题是函数 setPrefSize/setMaxSize/setMinSize 并没有真正改变半径/口径。

如何更改字段 - 单选按钮的大小以及如何更改半径/口径?

目前,这是我的代码:

//Configuration of the Radio-Button
    radio.setText("");
    radio.setMaxSize(8, 8);
    radio.setPrefSize(8, 8);
    radio.setMinSize(8, 8);
    radio.setStyle("-fx-padding:0;-fx-background-size:0; -fx-border-radius:13px; -fx-background-radius:13px;");
    radio.setSelected(false);
    radio.setVisible(check);
    addComponentToBox(radio);

感谢您的帮助...

【问题讨论】:

    标签: java css javafx resize radio-button


    【解决方案1】:

    我解决了这个问题。如果您只想设置点或收音机的样式/调整大小,您只需这样做:

        .radio-button .radio {
            -fx-padding: 2px;
         }
    
         .radio-button .dot {
            -fx-padding: 2px;
         }
    

    填充将设置无线电/点的半径/口径!

    【讨论】:

    • 这到底是为什么?
    • @MichelJung 你到底是什么意思?
    • 为什么必须使用填充来调整按钮的大小,而不是像人们期望的那样使用宽度/高度?
    【解决方案2】:

    正如JavaFX CSS Reference Guide 中所述,您还必须设置dot 的样式(这是样式类radio-button 的子节点。所以我的建议是创建一个单独的样式表(它支持模块化、重用和分离顾虑)并在你的 CSS 中做类似的事情

    .radio-button .radio {
        -fx-border-width: 3px;
        -fx-border-color: red;
        -fx-background-color: white;
        -fx-border-radius: 15px;
        -fx-padding: 10px;
    }
    .radio-button .radio:selected {
        -fx-background-color: white;
    }
    .radio-button -radio:armed {
        -fx-background-color: white;
    }
    .radio-button -radio:determinate {
        -fx-background-color: white;
    }
    .radio-button -radio:indeterminate {
        -fx-background-color: white;
    }
    .radio-button .dot {
        -fx-background-radius: 15px;
        -fx-padding: 12px;
    }
    .radio-button:selected .radio .dot {
        -fx-background-color: red;
    }
    

    我的造型有点夸张:-)

    【讨论】:

    • 无法使用 Inline-Styles 设置按钮样式?感谢您的回答...
    • 据我所知没有。仅仅是因为 css 伪类没有作为公共 API 的一部分公开,因此您可以在 Java 代码中用于样式操作。
    猜你喜欢
    • 1970-01-01
    • 2021-11-03
    • 1970-01-01
    • 1970-01-01
    • 2016-04-25
    • 1970-01-01
    • 1970-01-01
    • 2014-06-07
    • 2023-03-04
    相关资源
    最近更新 更多