当数据从数据库馈送到表但显示真假值时,JTable中的CheckBox未显示

时间:2014-03-21 20:58:59

标签: jtable jcheckbox

我有一个使用DefaultTableModel提供数据的JTable。现在我的问题是当表中存在并且表中只有空行时,具有布尔类型的列以复选框形式显示。但是当我从数据库向表中添加数据时,复选框消失了,表格显示了简单的真假。我已经检查了解决方案,我在link上找到了一个(在问题的评论中)。它说我需要覆盖getColumnClass方法,但我不知道我应该实现JTable类或DefaultTableModel类的这个方法?代码太简单了,不能在这里发布,它只以LinkedList的形式从数据库中提取数据,然后通过将其转换为Vector类Type以及构造函数所需的列名来提供给DefaultTableModel构造函数。然后将模型的对象传递给JTable.setModel()方法。

1 个答案:

答案 0 :(得分:0)

通过覆盖模型的这种方法:

@Override
public Class<?> getColumnClass(int i) {
    return super.getValueAt(0, i).getClass(); 
}

当然,您可以根据此重写函数的要求添加其他代码。