【发布时间】:2011-12-05 19:16:41
【问题描述】:
我有一个 jface tableviewer,我需要在行上实现一个选择侦听器,在选择行时必须触发一个视图。 我已通过以下方式实现它:
viewer.getTable().addListener(SWT.Selection, new Listener() {
@Override public void handleEvent(Event e)
{
try {
PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView("E2E_tab_view.view5");
}
catch (PartInitException e1)
{
e1.printStackTrace();
}
}});
但是我面临着多重选择的问题。我实际上不想允许对行进行多项选择,但现在我可以选择多个不需要的行。
那么任何人都可以帮助我实现这一点。我需要允许触发选择行或单击行视图的功能。
【问题讨论】:
-
有什么理由你必须使用 SWT.EraseItem 而不是 SWT.Selected? SWT.Selected 中的事件应该能够为您提供已选择的项目,您可以取消选择事件块中的其他项目。
-
我同意@Thomas 的观点,您应该改用
SWT.Selected事件。就多选而言,请参阅我的答案。