【问题标题】:JavaFX Combobox List StylingJavaFX 组合框列表样式
【发布时间】:2017-12-02 14:57:16
【问题描述】:

我正在尝试更改 JavaFX 组合框列表的文本颜色,但它似乎不起作用。

.combo-box .list-cell {
    -fx-text-fill: -fx-my-menu-font-color-highlighted;
}
.combo-box-popup .list-view{
    -fx-background-color: -fx-my-menu-color;
}

.combo-box-popup .list-view .list-cell{
    -fx-text-fill: #ff0000;
    -fx-padding: 4 0 4 5;
    -fx-background-color: -fx-my-menu-color;
}

.combo-box-popup .list-view .list-cell:filled:selected, .combo-box-popup .list-view .list-cell:filled:selected:hover{
    -fx-background-color: -fx-my-menu-color-highlighted;
    -fx-text-fill: -fx-my-menu-font-color-highlighted;
}

.combo-box-popup .list-view .list-cell:filled:hover{
    -fx-background-color: -fx-my-menu-color-highlighted;
    -fx-text-fill: -fx-my-menu-font-color-highlighted;
}

.combo-box-base{
    -fx-background-color: -fx-my-menu-color;
    -fx-padding: 0;
}

这将返回以下内容: 下拉列表文本不是白色的

我该如何解决这个问题?我的 CSS 知识不是很强。

【问题讨论】:

    标签: java css javafx combobox


    【解决方案1】:

    下面的示例应该可以正常工作 - 如果没有,请从您的 CSS 中删除其他可能影响弹出列表的条目。可能另一个条目具有更高的优先级。

    .combo-box-popup .list-cell {    
        -fx-background-color: white;    
        -fx-text-fill: red;
    }
    

    为了提高特异性,您还可以尝试以下设置

    .combo-box-popup > .list-view > .virtual-flow > .clipped-container > .sheet > .list-cell {
            -fx-background-color: white;    
            -fx-text-fill: red;
    }
    

    【讨论】:

    • 谢谢你!它有效 :) 我不得不在类中添加另一行代码。
    • 这个类的引用在哪里?
    猜你喜欢
    • 2014-10-23
    • 2015-11-14
    • 2014-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-17
    • 1970-01-01
    相关资源
    最近更新 更多