Java将0打印到JTable中的空单元格
在JavaJava将0打印到JTable中的空单元格,java,printing,jtable,cell,Java,Printing,Jtable,Cell,在JavaJTable中,我正在将打印0的代码写入空单元格: for (int i8 = 0; i8 < tgelir.getRowCount(); i8++) { if (dtmgelir.getValueAt(i8, 1) == null) { dtmgelir.setValueAt(0, i8, 1); } else { ... } } for(int i8=0;i8
JTable
中,我正在将打印0的代码写入空单元格:
for (int i8 = 0; i8 < tgelir.getRowCount(); i8++) {
if (dtmgelir.getValueAt(i8, 1) == null) {
dtmgelir.setValueAt(0, i8, 1);
} else {
...
}
}
for(int i8=0;i8
tgelir
是一个JTable
,dtmgelir
是一个DefaultTableModel
当我向单元格中写入一个数字时,其他单元格将变为0。但是,当我删除单元格中的0并写入一个数字时,我先前写入的数字将变为0。您需要使用两个循环,以循环方式逐行抛出所有单元格,如下所示:
//get rows and columns of your JTable
int nRow = yourtable.getRowCount(), nCol = yourtable.getColumnCount();
//Loop row by row
for (int i = 0; i < nRow; i++) {
//each row loop its columns
for (int j = 0; j < nCol; j++) {
//check if your value is not empty or null then change to 0
if (yourtable.getValueAt(i, j).equals("") || yourtable.getValueAt(i, j) == null) {
yourtable.setValueAt(0, i, j);
}
}
}
//获取JTable的行和列
int nRow=yourtable.getRowCount(),nCol=yourtable.getColumnCount();
//逐行循环
对于(int i=0;i
希望这能对您有所帮助。您多久调用一次这部分代码?只有一次?再给我们一些代码;)我的猜测是,在单元格中写入数字不会更新JTable,出于某种原因,它仍然会将值读取为“null”,并将其设置为0。调用此代码多少次并不重要,因为在第一次调用后,该值不应再为null