我想在左边用了一个JTree,读出数据库中的目录。点目录后右边Jtable来根据选择显示相应内容列表。用鼠标监听可以得到Tree的属性,可怎么相应的刷新table里面的数据呢?请高手指点一下。

解决方案 »

  1.   

    可以使用个tablemodel,当tree里的东西变化的时候
    就通知table,然后就可以更新table里的东西了
    我做过一个这种例子
    如果你要,可以加我qq,357958624
      

  2.   

    myTable = new TableModel(data);//用你从数据库中返回的数据初始化一个表结构
    jTable1.setModel(myTable);//使用该表结构作为JTable的数据源
    jTable1.updateUI();//更新JTable
      

  3.   

    这是我写的一个TABLEMODEL
    import java.util.*;
    import javax.swing.table.*;public class EquipTm extends AbstractTableModel{
        private Vector vect;
        private String[] title;    public EquipTm(){    }    public EquipTm(Vector vect,String[] title){
            this.vect = vect;
            this.title = title;
        }    public int getColumnCount() {
            return title.length;
        }    public int getRowCount() {
            return vect.size();
        }    public Object getValueAt(int row, int column) {
            if (!vect.isEmpty())
                return ( (Vector) vect.elementAt(row)).elementAt(column);
            else
                return null;
        }    public String getColumnName(int column) {
            return title[column];
        }    public void setValueAt(Object value, int row, int column) {
        }    public boolean isCellEditable(int row, int column) {
            return false;
        }
    }
      

  4.   

    使用时,定义需要的数据存放区和TITLE数组
     private Vector vect = new Vector();
     private String[] title = {"A","B","C","D","E"};
    然后
     EquipTm tm = new EquipTm(vect,title);
     jTable tblData = new JTable();
     tblData.setModel(tm);需要刷新数据时候只需要更新vect里面的内容,然后 tm.fireTableStructureChanged();
    就可以了。