Eclipse TableViewer,定义初始排序顺序对数据没有影响

Eclipse TableViewer,定义初始排序顺序对数据没有影响,eclipse,jface,tableviewer,Eclipse,Jface,Tableviewer,实际上,我像往常一样构建了一个tableviewer,但最初它不会根据为排序定义的列对所有行进行排序 我正在使用的代码: viewer.getTable().setSortColumn(viewer.getTable().getColumn(4)); viewer.getTable().setSortDirection(SWT.UP); 只有在手动单击列#4后,我才能获得正确的顺序,否则它将完全遵循链接到ViewContentProvider的对象列表的“插入顺序”。你能帮我吗?Tnx您只需要

实际上,我像往常一样构建了一个tableviewer,但最初它不会根据为排序定义的列对所有行进行排序

我正在使用的代码:

viewer.getTable().setSortColumn(viewer.getTable().getColumn(4));
viewer.getTable().setSortDirection(SWT.UP);

只有在手动单击列#4后,我才能获得正确的顺序,否则它将完全遵循链接到ViewContentProvider的对象列表的“插入顺序”。你能帮我吗?Tnx

您只需要刷新表。

也有同样的问题

当使用。。。
tableViewer.setComparator(比较器)
... 上面的代码被忽略


您必须在extended Viewer Comparator中手动设置初始排序列索引。

根据Devalex的答案,以下方法对我有效:

viewer.setContentProvider(...);
viewer.setInput(...);
viewer.setComparator(myComparator);
myComparator.setColumn(colIndex);
viewer.refresh();