我在我的eclipse rcp应用程序中使用JFace查看器框架,我创建了一个表查看器,它填充了一些数据。我在tableviewer下面有一个刷新按钮,当我在tableviewer中选择一行并触发刷新按钮选定的行仍以灰色显示
场景如下所示
在选择行之前
选择一行后
刷新后
以什么方式可以删除灰色背景,如上图所示,并将其作为第一张图像。
我的刷新按钮监听器代码很简单,有
viewer.refresh();
作为一种解决方法,我尝试实现像
这样的方法viewer.getTable().redraw();
viewer.getTable().setRedraw(true);
哪个不起作用,是否有刷新它的解决方案或者我应该完全刷新视图 注意:我的执行环境是windows xp
答案 0 :(得分:4)
该灰线是当前,而不是之前的选择。它是灰色的,因为表格不在焦点上。使用setSelection(StructuredSelection.EMPTY)
。
答案 1 :(得分:4)
如果使用样式标志SWT.HIDE_SELECTION
创建表,则表在失去焦点时不会显示其选择。即它看起来就像是你的第一张照片。