gpt4 book ai didi

java - JTable 中未选中的复选框给出 NullPointerException

转载 作者:行者123 更新时间:2023-11-30 06:17:19 25 4
gpt4 key购买 nike

我创建了一个 JTable,其中最后一个(第 6 个)列是一个带有复选框的“选择”列。通过覆盖 getColumnClass 方法以返回 Boolean.class 添加复选框。

    DefaultTableModel dtm = new DefaultTableModel(data, header){
@Override
public Class<?> getColumnClass(int col) {
if(col == 5){
return Boolean.class;
}
return super.getColumnClass(col);
}
};

现在我必须使用这些复选框选择一些行,并将这些选定行的一些值添加到数据库中。这是我使用的代码。

DefaultTableModel model = (DefaultTableModel) tblInvoiceList.getModel();
for(int i=0; i<model.getRowCount();i++) {
if ((Boolean)model.getValueAt(i, 5))
paydao.updateInvoiceWithPayment(model.getValueAt(i, 0).toString());
}

当我遍历时,选中的复选框返回 true。未经检查的将抛出 NullPointerException。异常发生在 (Boolean)model.getValueAt(i, 5) 部分。如何让未勾选的返回false??

最佳答案

默认的表格单元格编辑器最初可能接受 null,但您的循环不接受。如图herehere ,当您获取表的数据时,呈现为未选中 的模型值应显式设置为 Boolean.FALSEfalse

关于java - JTable 中未选中的复选框给出 NullPointerException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25956597/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com