我知道JTable
可以按单列排序。但是是否可以允许多列排序或者我需要自己编写代码?
diddy
问问题
12651 次
5 回答
10
setSortKeys
您可以通过在调用RowSorter
您正在使用的方法时指定多个排序键来按多列排序。
于 2008-09-21T02:24:20.340 回答
2
您应该能够设置 TableRowSorter 和与之关联的 Comparator。例子:
TableModel myModel = createMyTableModel();
JTable table = new JTable(myModel);
TableRowSorter t = new TableRowSorter(myModel);
t.setComparator(column that the comparator works against, Comparator<?> comparator);
table.setRowSorter(new TableRowSorter(myModel));
于 2008-09-21T02:19:23.863 回答
2
查看JXTable。JXTable 是JTable 的扩展,支持多列排序,以及JTable 不提供的其他功能。它可从 JDNC / SwingLabs 免费获得。
于 2008-09-21T02:23:05.820 回答
1
来自 netbeans 集合的 ETable。
它是 org-netbeans-swing-outline.jar
的一部分,谷歌搜索可以找到它。ETable 主要是 Outline(TreeTable)的基础,但它具有内置的多列排序以及许多其他不错的功能
于 2008-09-21T06:16:18.177 回答
1
“我知道 Jtable 可以按单列排序。但是是否可以允许多列排序或者我需要自己编写代码?”
表排序和过滤由排序器对象管理。提供排序器对象的最简单方法是将 autoCreateRowSorter 绑定属性设置为 true;
JTable table = new JTable();
table.setAutoCreateRowSorter(true);
此操作定义了一个行排序器,它是 javax.swing.table.TableRowSorter 的一个实例。
于 2012-02-21T11:13:20.037 回答