我需要在Present列中添加一个复选框以标记访客到达时(它是管理事件的应用程序)
String[] columns = {"Name","Present"};
Object[][] listInv = {
{"Giacomo Guilizzoni", false},
{"Guido Jack Guilizzoni", true},
{"Marco Botton", false},
{"Mariah Maclachlan", true},
{"Valierie Liberty", true}
};
DefaultTableModel dtm = new DefaultTableModel();
dtm.setDataVector(listInv, columns);
Jable tabla = new JTable(dtm);
TableColumn tcolumnas;
tcolumnas = tabla.getColumnModel().getColumn(0);
tcolumnas.setPreferredWidth(300);
jScroll = new JScrollPane(tabla);
tabla.setFillsViewportHeight(true);
我重写方法getColumnsClass:
public Class getColumnClass(int columna) {
return Boolean.class;
}
而不是显示JCheckBox显示字符串“true”或“false” 我做错了什么?
编辑:
就这么简单:
TableColumn tcolumnas = tabla.getColumnModel().getColumn(1);
columnas.setCellRenderer(tabla.getDefaultRenderer(Boolean.class));
tcolumnas.setCellEditor(tabla.getDefaultEditor(Boolean.class));