我创建jtable是先添加column,再往里面添值,不是像sun 的 jtable的tutorial 里那样,把column和每个column的值都初始化好后一次添加到jtable里,所以不知道在往jtable里添加列的时候,如何指定这列是boolean. 我想实现的是jtable里 添加如下列
id Integer
name String
isvalid Boolean 目前代码是这样的: DefaultTableModel md = (DefaultTableModel) this.getJTable().getModel();
md.addColumn("id");
md.addColumn("name");
md.addColumn("isvalid"); 但不知道如何指定这各个列的数据类型,请问如何指定??
id Integer
name String
isvalid Boolean 目前代码是这样的: DefaultTableModel md = (DefaultTableModel) this.getJTable().getModel();
md.addColumn("id");
md.addColumn("name");
md.addColumn("isvalid"); 但不知道如何指定这各个列的数据类型,请问如何指定??
(如believeyourself86所用的方法),但很不方便啊,
但其实完全可以直接取出来就是Integer,Boolean,甚至是自己定义的bean 等类型,要实现这个功能,就得自己写个 TableModel, 重写父类的 getColumnClass 方法,返回自己想要的数据类型的 class就可以了。
我写的如下:public class MyTableModel extends DefaultTableModel { private List<Class> colTypes = new ArrayList<Class>();
public Class getColumnClass(int c) {
return colTypes.get(c);
}
public void addColumn(Object columnName, Class columnType){
this.addColumn(columnName);
this.colTypes.add(columnType);
}
}