调用fireTableModelChanged方法尝试一下

解决方案 »

  1.   

    fireTableModelChanged是什么
    能具体点吗
      

  2.   

    晕,
     Data.addElement(sData);
    sData.clear();这不是又被你把内容给清掉了啊
      

  3.   

    是在给了Data之后再清的
    每次sData都只保存一行数据
      

  4.   

    fireTableModelChanged就是改动后启动这个表,以便显示表内容
    不知对不对,反正是启动表格的意思
      

  5.   

    谢谢cql0007
    是clear的问题
    也谢谢Jwinder 和chn217
      

  6.   

    public class TestTableTwo extends JFrame {

    JPanel panBody;

    JTable table;

    public TestTableTwo() {
    super("Table Example");
    setSize(400, 150);

    panBody = new JPanel();

    DefaultTableModel tableMode = new DefaultTableModel(){
    public boolean isCellEditable(int row, int col) {
    return false;
    }
    };

    table = new JTable(tableMode);

    Vector data = new Vector();
    Vector column = new Vector();

    for ( int i = 0; i < 5; i++ ) {

    column.addElement(String.valueOf(i));
    }

    for ( int i = 0; i < 5; i ++ ) {

    Vector tmpData = new Vector(); tmpData.addElement(String.valueOf(i+1));
    tmpData.addElement(String.valueOf(i+1));
    tmpData.addElement(String.valueOf(i+1));
    tmpData.addElement(String.valueOf(i+1));
    tmpData.addElement(String.valueOf(i+1));
    tmpData.addElement(String.valueOf(i+1));
    tmpData.addElement(String.valueOf(i+1));
    tmpData.addElement(String.valueOf(i+1));
    tmpData.addElement(String.valueOf(i+1));
    tmpData.addElement(String.valueOf(i+1));

    data.addElement(tmpData);

    tmpData = null;
    }

    tableMode.setDataVector(data, column);

    panBody.add(table);

    getContentPane().add(panBody, BorderLayout.CENTER);
    }    public static void main(String[] args) {
        
         TestTableTwo frame = new TestTableTwo();
        
    frame.addWindowListener(new WindowAdapter() {
    public void windowClosing(WindowEvent e) {
    System.exit(0);
    }
    });
    frame.setVisible(true);
        }
    }
    我做了一个Sample,你可以运行着看看.