重新使用 DefaultTableModel

Re Use of DefaultTableModel

    DefaultTableModel dtm = new DefaultTableModel(new Object[]{"SR#", "Date", "Name", "Description", "Quantity", "Weight", "Rate", "Total",  "Balance","Paid","Net Pay"},0);
            table = new JTable();
            table.setModel(dtm); 
            JScrollPane scroller=new JScrollPane(table);

            table.setBackground(new java.awt.Color(255,226,226));
            scroller.setBounds(0,0,1335,380);
            p2.add(scroller);
                while(rs.next()){
        dtm.addRow(new Object[]{rs.getString(1),rs.getString(2),rs.getString(3),rs.getString(4),rs.getString(5),rs.getString(6),rs.getString(7),rs.getString(8),rs.getString(9),rs.getString(10),rs.getString(11)});

如何在我的程序中多次重复使用这段代码,而不是每次发生事件时都创建一个新对象。

似乎您已经全局声明了 JTable 并在每次触发某个动作事件时都进行了初始化。

JTable 一样,您可以全局声明 DefaultTableModel 并初始化 JTableTableModel

如果不想保留JTable中的旧记录,可以在每次触发某个动作事件时清除JTable

终于找到了问题的解决方案。每当我在 运行 SQL 查询之前按下按钮时,我只需要调用 2 个方法。这两种方法是

panel.removeAll();

panel.validate();

这会从屏幕上清除您之前面板上的所有内容,并仅显示您希望看到的结果。