JavaFX/CSS : Changing text color of ComboBox's selected item

标签 java css javafx combobox scenebuilder

我正在使用一个名为 JFoenix 的自定义 JavaFX 库,它使用 Google 的 Material Design 对一些 JavaFX 组件进行了彻底改造。我特别遇到的问题是在选择后更改字符串组合框的所选元素的文本颜色。 This is my before screen, with the item in question circled.

当我从 ComboBox ( see screenshot here) 中选择一个元素时,文本从灰色变为黑色。我希望所选元素的文本与其余标签的颜色相同。在 Scene Builder 中添加 -fx-text-fill-fx-text-inner-color 不起作用。

我发现的唯一可能的解决方案是使 ComboBox 可编辑并在用户选择一个选项后通过其编辑器设置颜色:

@FXML
private void handleComboBoxFormat() {
     this.mpaaBox.getEditor().setStyle("-fx-text-fill: #eceff1;" + "-fx-background-color: #445566");
}

我不喜欢这个解决方案,因为我不希望 ComboBox 是可编辑的,而且感觉很乱。还有其他方法可以编辑文本颜色吗?谢谢!

最佳答案

好的,所以在弄乱了@MouseEvent 建议的 CSS 之后,我找到了解决方案。

.combo-box .list-view .list-cell 在您打开弹出窗口时影响 ComboBox 列表中的元素。

.combo-box .list-cell 影响所选元素的标签,这是我访问时遇到的问题。

关于JavaFX/CSS : Changing text color of ComboBox's selected item,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44687960/

相关文章:

php - 如何在PHP中的导航栏中添加动画

jquery - 标题顶部的 jqGrid 水平滚动条

一份文档中的 JavaFX 引用 - 在哪里/如何?

java - 如何使用 Intellij 运行需要来自另一个项目/模块的配置文件的 java 类?

java - 在spring mongodb中索引复合对象

css - 在窗口调整大小之前部分不可见

JavaFX "is already set as root of another scene"

java - 从 FXML 加载 Controller 时出现 IllegalArgumentException

Java catch block ,捕获的异常不是最终的

java - org.springframework.orm.hibernate5.HibernateQueryException : Video is not mapped [from Video]