我有一个JFace TableViewer。一列中的值通常应该是唯一的,但有些情况下它们没有意义(例如,当一行被复制但尚未更改时)。但是,我想通过突出显示该列中包含重复值的行来提醒用户重复值。最好的方法是什么? LabelProvider似乎只允许我访问当前单元格或最多访问当前行。
谢谢, 托马斯
答案 0 :(得分:1)
为了检测整个表格中的重复,我猜你必须有某种包含所有单元格数据的地图或集合。我的方法是将这样的地图放在视图中(TableViewer容器),然后让标签提供者保存到该视图的链接(因此是地图)。因此,从标签提供商内部,它能够检测到重复并做出相应的响应。