Java JTable在JFrames之间切换后不更新

Java JTable在JFrames之间切换后不更新,java,swing,jframe,jtable,Java,Swing,Jframe,Jtable,我在2个JFrame窗口之间切换,但切换时我试图在您切换时更新JTable,因为一个框架用于添加员工,另一个框架用于显示员工表。因此,在添加employee并返回原始框架后,它应该会更新表。问题是更新表的方法没有运行 以下是包含表格的框架的代码: public class employeeUI extends javax.swing.JFrame { ArrayList<employeeClass> employeeList = new ArrayList<employeeC

我在2个
JFrame
窗口之间切换,但切换时我试图在您切换时更新
JTable
,因为一个框架用于添加员工,另一个框架用于显示员工表。因此,在添加employee并返回原始框架后,它应该会更新表。问题是更新表的方法没有运行

以下是包含表格的框架的代码:

public class employeeUI extends javax.swing.JFrame {

ArrayList<employeeClass> employeeList = new ArrayList<employeeClass>();

/**
 * Creates new form employeeUI
 */
public employeeUI() {
    initComponents();
    readfromFile();
    populateTable();
    getContentPane().setBackground(new Color(23, 76, 79));
}

public void populateTable() {
    DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
    Object rowData[] = new Object[7];
    for (int i = 0; i < employeeList.size(); i++) {
        rowData[0] = employeeList.get(i).employeeID;
        rowData[1] = employeeList.get(i).employeeName;
        rowData[2] = employeeList.get(i).employeeEmail;
        rowData[3] = employeeList.get(i).employeeAddress;
        rowData[4] = employeeList.get(i).employeeTitle;
        rowData[5] = "$" + employeeList.get(i).employeeSalary;
        rowData[6] = employeeList.get(i).employeeHire;
        model.addRow(rowData);
    }
}
公共类employeeUI扩展了javax.swing.JFrame{
ArrayList employeeList=新建ArrayList();
/**
*创建新表单employeeUI
*/
公共雇员{
初始化组件();
readfromFile();
populateTable();
getContentPane().setBackground(新颜色(23,76,79));
}
public void populateTable(){
DefaultTableModel=(DefaultTableModel)jTable1.getModel();
对象rowData[]=新对象[7];
对于(int i=0;i

下面是一个演示问题的视频:

您在此处发布的代码没有提示问题的原因。请创建一个jFrame,以便我们也可以重现您的问题并提供解决方案。
因为一个jFrame用于添加员工,另一个用于显示员工表。
-您应该只有一个jFrame。添加员工的第二个窗口应该是模态JDialog。一个简单的解决方案是将DefaultTableModel传递给子对话框。当您输入员工信息并单击“保存”按钮时,您使用addRow(…)方法添加新员工信息。注意,不需要employeeList ArrayList。eEmployees的数据将存储在TableModel中。不需要将数据放在两个位置。