在我的应用程序中,我有多个 ListView 。当我在其中一个 ListView 中选择一个单元格时,其他 ListView 中的所有选定单元格都是灰色的(表示它们在它们的 ListView 中被选中)。我一直在试图找出如何禁用“灰色选择器”,这样我们就可以看到一个 ListView ,就好像它刚刚被创建一样。
目前,我很清楚他们的“灰色选择器”是正常行为的一部分,而不是重点行为(见图片)。所以我的想法是在 ListView 聚焦时或 ListView 未聚焦时为选定的列表单元格定义不同的颜色。但我还没有发现任何东西来区分这种差异(使用 CSS)。
最佳答案
在 modena.css
文件中,您可以找到以下选择器来更改所选单元格的颜色:
/* Selected rows */
.list-view:focused > .virtual-flow > .clipped-container > .sheet > .list-cell:filled:selected {
-fx-background: -fx-selection-bar;
-fx-table-cell-border-color: derive(-fx-selection-bar, 20%);
}
/* Selected when control is not focused */
.list-cell:filled:selected {
-fx-background: -fx-selection-bar-non-focused;
-fx-table-cell-border-color: derive(-fx-selection-bar-non-focused, 20%);
}
只需将 -fx-background
更改为 -fx-background-color
并选择您的颜色。请注意,此解决方案将更改应用程序中所有 ListViews
的颜色。
关于css - 在未聚焦的 ListView 上禁用灰色选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42645310/