更改 JavaFX TreeTableView 的选择颜色
Change selection color of a JavaFX TreeTableView
我在 FX、CSS 和 TreeTableView 方面遇到了一些麻烦。
我有包含蓝色 Hyperlinks 的单元格。现在,如果单元格被选中,背景变为蓝色,因此 link 实际上是不可见的。我现在想使用样式表更改选定单元格的背景颜色。
对于 TreeView,以下工作正常:
.tree-view .tree-cell:selected{
-fx-background-color: green;
}
所以类似地我试过了:
.tree-table-view .tree-table-cell:selected{
-fx-background-color: green;
}
但这没有任何效果。
令人惊讶的是,虽然我能够用这个改变一般背景颜色:
.tree-table-view .tree-table-cell{
-fx-background-color: yellow;
}
单元格现在都是黄色的,但这似乎覆盖了默认的选择模式,因为现在即使选定的行也有黄色背景。
对我来说,状态选择器似乎不适用于 TreeTableView 单元格,但我不知道如何通过其他方式实现这一点。
我也使用 JavaFX 文档中的 Example 15-2 进行了尝试,得到了同样令人不满意的结果。
我无法在网上找到任何解决方案,因为所有问题似乎都与 TreeViews 或 TableViews 有关,而不是组合的 TreeTableView。因此,对正确文档的任何提示或 link 都会非常有帮助!
提前致谢!
P.S:
我知道可以通过改变 Hyperlink 的颜色来解决这个问题,但是一定有办法改变单元格的颜色,对吗?
您可以将 .tree-table-row-cell
选择器与您提到的 -fx-background-color
属性 一起使用:
.tree-table-row-cell:selected {
-fx-background-color: green;
}
您还可以更改边框颜色以更好地适应填充颜色:
.tree-table-row-cell:selected {
-fx-background-color: green;
-fx-table-cell-border-color: green;
}
您可以使用以下方法将更多样式应用于基础 table 单元格:
.tree-table-row-cell:selected > .tree-table-cell{
/*enter style rules here*/
}
我在 FX、CSS 和 TreeTableView 方面遇到了一些麻烦。 我有包含蓝色 Hyperlinks 的单元格。现在,如果单元格被选中,背景变为蓝色,因此 link 实际上是不可见的。我现在想使用样式表更改选定单元格的背景颜色。
对于 TreeView,以下工作正常:
.tree-view .tree-cell:selected{
-fx-background-color: green;
}
所以类似地我试过了:
.tree-table-view .tree-table-cell:selected{
-fx-background-color: green;
}
但这没有任何效果。 令人惊讶的是,虽然我能够用这个改变一般背景颜色:
.tree-table-view .tree-table-cell{
-fx-background-color: yellow;
}
单元格现在都是黄色的,但这似乎覆盖了默认的选择模式,因为现在即使选定的行也有黄色背景。
对我来说,状态选择器似乎不适用于 TreeTableView 单元格,但我不知道如何通过其他方式实现这一点。
我也使用 JavaFX 文档中的 Example 15-2 进行了尝试,得到了同样令人不满意的结果。
我无法在网上找到任何解决方案,因为所有问题似乎都与 TreeViews 或 TableViews 有关,而不是组合的 TreeTableView。因此,对正确文档的任何提示或 link 都会非常有帮助!
提前致谢!
P.S: 我知道可以通过改变 Hyperlink 的颜色来解决这个问题,但是一定有办法改变单元格的颜色,对吗?
您可以将 .tree-table-row-cell
选择器与您提到的 -fx-background-color
属性 一起使用:
.tree-table-row-cell:selected {
-fx-background-color: green;
}
您还可以更改边框颜色以更好地适应填充颜色:
.tree-table-row-cell:selected {
-fx-background-color: green;
-fx-table-cell-border-color: green;
}
您可以使用以下方法将更多样式应用于基础 table 单元格:
.tree-table-row-cell:selected > .tree-table-cell{
/*enter style rules here*/
}