我想每添加一个数据的时候 从新读取jtable 但是我让它从新载入 Model 的时候一点作用也没有 请高手指教
  this.jTable1.setModel(new javax.swing.table.
             DefaultTableModel(body, head));
     this.jTable1.updateUI();

解决方案 »

  1.   

    一般是这样,让Model发生变化,然后激发一个事年就以了,比如通过AbstractTableModel等类所提供的fireTableChanged等方法。
      

  2.   

    用DefaultTableModel的,setDataVector(null,/*你的表头String数组*/);
      

  3.   

    用一个二维数组field作为表的数据,每次更新表就更新该field
      

  4.   

    还是不大会
    我的表头和读取数据的 都是 Vector 。
    可以加下我QQ吗 184407739 
    谢谢了。。
      

  5.   

    还有还有...
          Vector head2 = new Vector();
        Vector body2 = new Vector();         //获取表头的列名
            head2.add("门牌号");
            head2.add("姓名");
            head2.add("金额");
            head2.add("支付日期");
            head2.add("截至日期");
            head2.add("交付月数");        //获取表单数据表内的内容
            rs = db.A_2buile();
            try {
                while (rs.next()) {
                    Vector line = new Vector();
                    line.add(rs.getString(1));
                    line.add(rs.getString(2));
                    line.add(rs.getString(3));
                    line.add(rs.getString(4));
                    line.add(rs.getString(5));
                    line.add(rs.getString(6));
                    body2.add(line);
                }        } catch (SQLException ex) {
                ex.printStackTrace();        }
            //声明一个Model对象
            javax.swing.table.DefaultTableModel model = new javax.swing.table.
                    DefaultTableModel(body2, head2);
            this.jTable2.setModel(model);
    我这个是在一个方法里面,如果我点击一个按钮,再读这个方法,数据表就会又增加一次重复的数据
      

  6.   

    你每次都用body2.add(line);他当然一直加上去了。
    读出rs后先把talbe清空。