java 如何在JSwing中将现有的JTable设置为等于新的JTable?

qojgxg4l  于 2023-02-02  发布在  Java
关注(0)|答案(1)|浏览(136)

因此,我有一个现有的JTable,它是在创建应用程序时创建的,其中包含值。然后创建JTable上所有值的副本,然后排序并将排序后的数组放入一个2D数组中,现有的JTable名为j,现有的模型名为model。我创建了一个名为sortedModel的新表模型,现在我想将其设置为j,这样它就可以在屏幕上显示更新后的排序表。
到目前为止,我已经尝试过了,但是它没有将其更新到屏幕上,所以我假设我在将其设置为j(我现有的JTable)方面做错了什么。
下面是我的代码:

// Converting 2D arraylist to normal 2D array for JTable
    String[][] sortedData = tempUsersToAList.stream().map(u -> u.toArray(new String[0])).toArray(String[][]::new);

    DefaultTableModel sortedModel = new DefaultTableModel(sortedData, columnNames);
    j = new JTable(sortedModel);
vm0i2vca

vm0i2vca1#

//j = new JTable(sortedModel);

不要创建新的JTable。
只需重置现有表格的模型:

j.setModel( sortedModel );

相关问题