如何使用TableCellEditor编辑复选框
问题描述:
我创建了一个应用程序,它从Mysql数据库中检索数据并将它们显示在JTable中。然后我在第一列添加了复选框,我可以用TableCellRendere显示它们。但是当我尝试检查它们时,复选框未被检查。事实上,我读了如何在这个环节上适当使用一个TableCellEditor的,但我不明白的还有:如何使用TableCellEditor编辑复选框
https://docs.oracle.com/javase/8/docs/api/javax/swing/table/TableCellEditor.html
然后我得到这个代码,但我不知道是什么在方法public Component getTableCellEditorComponent()
添加。
这里是我需要完成的代码:
答
我已经解决了这个问题
public class CheckBoxCellEditor extends AbstractCellEditor implements TableCellEditor {
protected JCheckBox checkBox;
public CheckBoxCellEditor() {
checkBox = new JCheckBox();
checkBox.setHorizontalAlignment(SwingConstants.CENTER);
}
public Component getTableCellEditorComponent(
JTable table,
Object value,
boolean isSelected,
int row,
int column) {
// What should I add here and can you explain me
return checkBox;
}
public Object getCellEditorValue() {
return Boolean.valueOf(checkBox.isSelected());
}
}
感谢:
感谢