获取排序的 TableModel

Get sorted TableModel

我正在尝试获取 JTable 的排序 TableModel,这是通过以下简单的 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 以便我可以 post 到另一个 JTable?

一个TableRowSorter conditions the view, JTable; the model, TableModel, remains unchanged. If the underlying model of the RowSorter remains the same, you should be able apply the old TableRowSorter to the new JTable using setRowSorter().

…
someOtherTestTable.setModel(tM);
someOtherTestTable.setRowSorter(sortRow);