我想以编程方式选择NatTable
NatTable example program中的一些示例代码(在经典示例下 - >选择 - >获取并设置所选对象)中使用了一个ISelectionProvider(在这种情况下是org.eclipse.nebula.widgets.nattable) .selection.RowSelectionProvider)。
ISelectionProvider selectionProvider = new RowSelectionProvider(gridLayer.getBodyLayer().getSelectionLayer(), bodyDataProvider, false);
selectionProvider.setSelection(new StructuredSelection(new Person[] { homer, smithers, nelson }));
从另一个来源,我发现了一种更简单的选择行的方法:
natTable.doCommand(new SelectRowsCommand(ILayer layer, int columnPosition, int rowPosition, boolean withShiftMask, boolean withControlMask));
有没有理由不使用第二种方法?
答案 0 :(得分:0)
正如您已经提到的,第一种方法是使用ISelectionProvider,它通常用于在Eclipse应用程序中的各个部分之间共享选择。
第二种方法是NatTable默认值。选择提供者在内部做同样的事情。因此,如果您只关心以编程方式进行选择,则可以在没有选择提供程序的情况下使用它。