我在做java的数据库编程,遇到了一个问题
我是把数据库中的数据显示放到Jtable中的。数据库有两个,比如database_A,database_B。用JcomboBox来选择。问题是:database_A数据已经显示在Jtable中了,如何把database_A的数据清除,然后把database_B的数据放到Jtable中?Jtable的实现我是这样做的:tablemodel 继承abstracttablemodel
然后 tablemodel model =new tablemodel(vector); (vector是传过来的数据库的内容。)Jtable table=new Jtable(model);
用JcomboBox如何监听?急啊!

解决方案 »

  1.   

    使用JComboBox类的removeAllItems()方法使得每次可以刷新此组合框
    如果是JList类的话,使用removeAll()方法;
      

  2.   

    用Jcombox的addActionListener,来增加监听器,然后建议你把原来的表dispose()了,重新生成一个表。
      

  3.   

    Jcombox addActionListener也许表不需要销毁,把建立表的模型引用的数据列名,数据对象都换成另外一个的,然后用表模型的那些fire方法+JTable.repaint()试试或者建立两个表模型,分别对应数据表1和数据表2,然后JTable.setModel;JTable.repaint();
      

  4.   

    下面两句就可以消除当前table中的数据
    model.setColumnCount(0); 
    model.setRowCount(0);
    然后就可以重新向table中添加新的数据
    比如
    model.addColumn(新的列名)
    model.addRow(新的数据)我以前上数据库这门课的时候做的实验就是这么做的,完全可行
      

  5.   

    这个问题我解决了!就是用JTable.setModel;JTable.repaint();
    感谢diannaomingong(电脑民工)!感谢兄弟们!