更改 NatTable 单元格选择颜色
Changing the NatTable cell selection color
当我点击一行时,整行的颜色都按预期改变了。但是,鼠标悬停的单元格会更改为与行的其余部分不同的颜色。我试图阻止单元格更改为与行的其余部分不同的颜色。
我正在尝试弄清楚单元格选择颜色的设置位置以及如何删除它(让单元格选择使用单元格当前背景颜色)。
我尝试修改 CellConfigAttribute 或通过以下方式取消注册等操作均未成功:
getNatTable().getConfigRegistry().
unregisterConfigAttribute(CellConfigAttributes.CELL_STYLE);
但运气不好。我不知道如何按顺序遍历所有样式并查看它是从哪里生成的。我希望看到类似于以下的现有方法:
List<ConfigAttribute<IStyle>> list = getNatTable().getConfigRegistry().
getConfigAttributesInOrder();
不幸的是,我看到的都是这样的东西,我觉得它对我的情况没有用:
List<String> strings = getNatTable().getConfigRegistry().
getDisplayModeOrdering().getDisplayModeOrdering("SELECT");
我已阅读包含一些一般性建议的文档,但没有看到显示如何执行此操作的明确代码示例。那么,显示我是否确定单元格在哪里被修改以及如何防止它?
我用于完整行选择的代码是:
public void foo() {
final SelectionLayer selectionLayer = glazedListsGridLayer.
getBodyLayerStack().getSelectionLayer();
final RowOnlySelectionConfiguration<T> selectionConfig =
new RowOnlySelectionConfiguration<>();
selectionLayer.addConfiguration(selectionConfig);
getNatTable().addConfiguration(new RowOnlySelectionBindings());
}
你说的是选择锚。您唯一需要做的就是为 DisplayMode.SELECT 和标签 SelectionStyleLabels.SELECTION_ANCHOR_STYLE 注册与您仅为 DisplayMode.SELECT 注册相同的样式。在 DefaultSelectionStyleConfiguration
中注册了不同的样式
当我点击一行时,整行的颜色都按预期改变了。但是,鼠标悬停的单元格会更改为与行的其余部分不同的颜色。我试图阻止单元格更改为与行的其余部分不同的颜色。
我正在尝试弄清楚单元格选择颜色的设置位置以及如何删除它(让单元格选择使用单元格当前背景颜色)。
我尝试修改 CellConfigAttribute 或通过以下方式取消注册等操作均未成功:
getNatTable().getConfigRegistry().
unregisterConfigAttribute(CellConfigAttributes.CELL_STYLE);
但运气不好。我不知道如何按顺序遍历所有样式并查看它是从哪里生成的。我希望看到类似于以下的现有方法:
List<ConfigAttribute<IStyle>> list = getNatTable().getConfigRegistry().
getConfigAttributesInOrder();
不幸的是,我看到的都是这样的东西,我觉得它对我的情况没有用:
List<String> strings = getNatTable().getConfigRegistry().
getDisplayModeOrdering().getDisplayModeOrdering("SELECT");
我已阅读包含一些一般性建议的文档,但没有看到显示如何执行此操作的明确代码示例。那么,显示我是否确定单元格在哪里被修改以及如何防止它?
我用于完整行选择的代码是:
public void foo() {
final SelectionLayer selectionLayer = glazedListsGridLayer.
getBodyLayerStack().getSelectionLayer();
final RowOnlySelectionConfiguration<T> selectionConfig =
new RowOnlySelectionConfiguration<>();
selectionLayer.addConfiguration(selectionConfig);
getNatTable().addConfiguration(new RowOnlySelectionBindings());
}
你说的是选择锚。您唯一需要做的就是为 DisplayMode.SELECT 和标签 SelectionStyleLabels.SELECTION_ANCHOR_STYLE 注册与您仅为 DisplayMode.SELECT 注册相同的样式。在 DefaultSelectionStyleConfiguration
中注册了不同的样式