【问题标题】:JavaFX 8 - How to change the color of the prompt text of a NOT editable combobox via CSS?JavaFX 8 - 如何通过 CSS 更改不可编辑组合框的提示文本颜色?
【发布时间】:2015-02-09 18:30:48
【问题描述】:

标题说明了一切。我想更改不可编辑的combobox 的提示文本的颜色,使该文本具有与可编辑combobox 的提示文本相同的颜色。 在我的 CSS 文件中,我尝试在 .combo-box.combo-box-base.combo-box-base .text-field.combo-box-base .text-input 中使用 -fx-prompt-text-fill,但没有任何效果。

我必须使用什么样式类?

【问题讨论】:

    标签: css combobox stylesheet javafx-8 text-styling


    【解决方案1】:

    ComboBox 不可编辑时,没有TextField,属性-fx-prompt-text-fill 不再有效,因为所显示的控件是ListCell,不会扩展TextInputControl

    为了设置这个单元格的样式,我们可以提供我们自定义的样式ListCell

    @Override
    public void start(Stage primaryStage) {
        ComboBox comboBox = new ComboBox();
        comboBox.getItems().addAll("Item 1", "Item 2", "Item 3");
        comboBox.setPromptText("Click to select");
        comboBox.setEditable(false);
    
        comboBox.setButtonCell(new ListCell(){
    
            @Override
            protected void updateItem(Object item, boolean empty) {
                super.updateItem(item, empty); 
                if(empty || item==null){
                    // styled like -fx-prompt-text-fill:
                    setStyle("-fx-text-fill: derive(-fx-control-inner-background,-30%)");
                } else {
                    setStyle("-fx-text-fill: -fx-text-inner-color");
                    setText(item.toString());
                }
            }
    
        });
    
        Scene scene = new Scene(new StackPane(comboBox), 300, 250);
        primaryStage.setScene(scene);
        primaryStage.show();
    }
    

    【讨论】:

      【解决方案2】:

      您好,我相信我提供了更好的解决方案

      第一

      在您的 CSS 文件中创建以下内容

      .input .text-field {
               -fx-prompt-text-fill: #a0a0a0; // or any color you want
      }
      

      在附加 CSS 文件后,在场景构建器中将您的组合框类设置为输入

      这对我来说很有效

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-12-27
        • 2016-02-02
        • 2012-08-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-07-21
        相关资源
        最近更新 更多