我目前在JTable中有一列存储整数值的列,并且我已使用 setCellRenderer 函数不显示复选框而不显示复选框。现在,我发现应该覆盖 getCellEditor 函数,以便对其进行编辑,但无法弄清楚。 到目前为止,这是我所做的:
@Override
public TableCellEditor getCellEditor(int row, int column) {
if (column == 0){
JCheckBox cb = new JCheckBox();
cb.addItemListener(new ItemListener() {
@Override
public void itemStateChanged(ItemEvent ie) {
if(cb.isSelected()){
getModel().setValueAt(2, row, column);
}else{
getModel().setValueAt(1, row, column);
}
}
});
return new DefaultCellEditor(cb);
}else{
return super.getCellEditor(row, column);
}
}