我正在尝试通过以下简单的TableModel
条件获取JTable
的已排序regex
:
try {
TableRowSorter<TableModel> sortRow = new TableRowSorter<>(testTable.getModel());
testTable.setRowSorter(sortRow);
String sortString = "Something";
sortRow.setRowFilter(RowFilter.regexFilter("(?i)" + sortString));
}
将根据sortString
对数据进行排序。
但是当我尝试执行以下操作时:
try {
TableRowSorter<TableModel> sortRow = new TableRowSorter<>(testTable.getModel());
// ....
// previous code
// ....
TableModel tM = testTable.getModel();
someOtherTestTable.setModel(tM); //<---Here
}
它为我提供了DefaultTableModel
。所以,我的问题是这样的:如何获取排序TableModel
以便我可以发布到另一个JTable
?
答案 0 :(得分:3)
TableRowSorter
条件视图,JTable
; 模型,TableModel
保持不变。如果RowSorter
的基础模型保持不变,您应该可以使用setRowSorter()
将旧TableRowSorter
应用于新的JTable
。
…
someOtherTestTable.setModel(tM);
someOtherTestTable.setRowSorter(sortRow);