是否有一种简单的方法可以使用 Java 1.5(setAutoCreateRowSorter
并且TableRowSorter
似乎是 Java 1.6 功能)对 JTable 中的行进行排序?
Miles D
问问题
7317 次
3 回答
2
Java 1.5 中的排序只能通过库进行。
例如,使用 Kaarel 中提到的 JXTable 或此处的 VLTable 。
另一个好的图书馆是glazedlists
它也用于 Spring Rich Client 项目。
甚至有一些方法可以将Glazed Lists 与 JXTable 结合使用
于 2009-10-25T22:18:56.103 回答
1
使用SwingXJXTable
项目中的,参见例如
于 2009-02-26T17:42:05.273 回答
0
JXTable 需要一个大包,并且很难获得正确的版本。(Java 1.5 不高于 1.0 版)。
改用 TableSorter.java。获取它:
http://ouroborus.org/java/2.1/TableSorter.java
并将其插入您的项目中。
现在您将 tableModel 包装在 TableSorter 的一个实例中,并将其插入到 JTable 中。TableSorter 充当 JTable 实例和您的 tableModel 的“中间人”。
像这样使用它(代码未经测试):
JTable myTable = new JTable();
TableSorter mySorter = new TableSorter(myTableModel, myTable.getTableHeader());
myTable.setTableModel(mySorter);
您可以像这样以编程方式设置sprting:
mySorter.setSortingStatus(0,TableSorter.ASCENDING);
尝试 tweekingMouseHandler.mouseClicked()
让它在单击顺序中跳过 NOT_SORTED 选项,并与渲染器混淆以获得更好的列标题以及三角形的放置和可见性。
于 2009-10-22T13:25:11.247 回答