Jtable中的某一列添加了ComboBox,我的需求是每一行的ComboBox的值要不一样(从数据库中取),我现在的方法只能是这一列的值都是一样的。哪位XD给个思路啊,先谢谢了!
dm = new DefaultTableModel();
table = new JTable(dm);
box = new JComboBox();
box.addItem("1");
box.addItem("2");
box.addItem("3");
box.addItem("4");DefaultCellEditor   ce   =   new   DefaultCellEditor(box);
TableColumnModel   cm   =   table.getColumnModel();
cm.getColumn(5).setCellEditor(ce);    
scrollpane = new JScrollPane(table);

解决方案 »

  1.   

    有点不明白楼主的意思
    box.setItem ??
      

  2.   

    可以把每个box当作一个cell单元,做成一个数组或者Vector,
    然后再创建实例:
    DefaultTableModel(Vector data, Vector columnNames) 或者用这个方法 setValueAt(Object aValue, int rowIndex, int columnIndex) ;
              Sets the value in the cell at columnIndex and rowIndex to aValue.
    像LZ写的"cm.getColumn(5).setCellEditor(ce);" 给第5列干成了同一个的cell,不一样才怪。
    其实我觉得懒人才用DefaultTableModel吧。自己写一个TableModel类来Implement AbstractTableModel,
    不仅使用方便,而且扩展性好。
      

  3.   

    重写DefaultCellEditor的getxxx方法不就可以了,将返回的编辑器设置为你想要的........也就是那个combobox.....