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

时间:2009-11-14 04:21:41

标签: eclipse jface tableviewer

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

我正在使用的代码:

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

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

3 个答案:

答案 0 :(得分:1)

你只需要刷新表格。

答案 1 :(得分:1)

遇到同样的问题。

使用时...... tableViewer.setComparator(comparator) ......上面的代码被忽略了。

您必须在扩展的ViewerComparator中手动设置初始排序列索引。

答案 2 :(得分:0)

建立Devalex的答案,以下内容对我有用:

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