2017-02-03 60 views
2

打印0空單元在Java JTable我寫打印0這個代碼空單元格:的Java JTable中

for (int i8 = 0; i8 < tgelir.getRowCount(); i8++) { 
    if (dtmgelir.getValueAt(i8, 1) == null) { 
     dtmgelir.setValueAt(0, i8, 1); 
    } else { 
     ... 
    } 
} 

tgelirJTabledtmgelir是一個DefaultTableModel

當我寫了一些細胞,其他細胞變成0。但是,當我在一個單元格中刪除0和寫一個數字,我以前寫的號碼變爲0。

+0

你多久打一次這段代碼?只有一次? –

+0

給我們更多的代碼;)我的猜測是,在單元格中編寫數字不會更新JTable,並且由於某種原因,它仍然將值讀作'null'並將其設置爲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); 
     } 
    } 
} 

希望這能幫助你。

+0

非常感謝。 – JACK

+0

@JACK祝你好運 –