我自己定义了一个getBank()函数,返回一个Object[][]二维数组,先用它对JTable赋值,然后修改了值,并用getBank()返回,但不能刷新显示。
data = bank.getBank();  //此时getBank()的返回值已经改变,测试过了!data是Object[][]类型
table.repaint();        //table是JTable的一个实例
table.updateUI();

解决方案 »

  1.   

    data是什么东西?你的表格里的数据是怎么组织的?最好让table model来管理数据,jtable只负责显示。数据更新后通过table model的firedata***()函数来更新UI。图方便可以就用firetabledatachanged()。整个表都刷一遍
      

  2.   

    data是个Object类型的二维数组,当时定义JTable的时候就是:
    String[] heading = new String[]{"","A","B","C","A","B","C","A","B","C"};
    Object[][] data = bank.getBank();
    JTable table = new JTable(data,heading);
      

  3.   

    建议楼主实现一个AbstractTableModel,并在实现中引用Object[][]数组的数据,修改Table数据后,调用你的tableModel的fireTableDataChanged方法即可自动刷新表格,如果表格的结构发生了变化,例如列的数量变了,则调用fireTableStructrueChanged方法。