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