2

我在我的 eclipse rcp 应用程序中使用 JFace 查看器框架,我创建了一个表格查看器,它填充了一些数据。我的视图在 tableviewer 下方有一个刷新按钮,当我在 tableviewer 中选择一行并触发刷新按钮时,选定的行仍然以灰色显示。
场景如下图
选择行前 选择
在选择行之前

选择一行后
后 刷新后
刷新后
用什么方法可以去除上图中的灰色背景并使其成为第一张图像。我的刷新按钮侦听器代码很简单,其中有

viewer.refresh();

作为一种解决方法,我尝试实施类似的方法

viewer.getTable().redraw();
viewer.getTable().setRedraw(true); 

这不起作用,是否有刷新它的解决方案或者我应该完全刷新视图
注意:我的执行环境是 windows xp

4

2 回答 2

4

那条灰线是current,而不是以前的选择。它是灰色的,因为表格不在焦点上。使用setSelection(StructuredSelection.EMPTY).

于 2012-01-16T07:29:51.607 回答
4

如果您使用样式标志创建表格,则SWT.HIDE_SELECTION表格在失去焦点时将不会显示其选择。即它看起来像你的第一张图片。

于 2012-01-16T14:18:11.093 回答