gpt4 book ai didi

java - 如何获得更新后的排序后 TableModel?

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:56:59 26 4
gpt4 key购买 nike

我有一个使用 setAutoCreateRowSorter(true) 的 JTable 和一个附加的 RowSorterListener,如下所示,因为我需要在我的应用程序的其他地方对某种 JTable 执行一些操作。

我发现每当我点击列标题进行排序时,JTable 会以正确的顺序重新显示行并调用监听器,但我拉出的 TableModel 始终是原始的排序前表模型。

table.getRowSorter().addRowSorterListener(new RowSorterListener() {
@Override
public void sorterChanged(RowSorterEvent rsevent) {
rsevent.getSource().getModel(); // Nope, original ordering here
table.getModel(); // Same thing
}
};

如何获得新的行排序后顺序,就像现在在 JTable 中显示的那样?

最佳答案

TableModel 中的数据永远不会改变,只有数据的 View 会改变。

如果您希望模型中的数据按照它在表格中的显示顺序显示,那么您只需使用:

table.getValueAt(row, column);

换句话说,您需要遍历所有行和列以获取当前查看顺序的数据。

关于java - 如何获得更新后的排序后 TableModel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5176832/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com