這是我第一次在這裏發帖,很抱歉,如果我犯了一些錯誤。TableModelListener和多列驗證
我上一個JTable哪一列數據具有共同驗證的一些參數,例如:
第3倍的值> 30
第4倍的值> 10
第5倍的值> 4
另外前2列是「自動」填充的,將0放在其餘列中。
如果該數據是正確的,在第5列中,我將顯示一個刻度線的圖像,否則,我會顯示警告圖像。
爲了驗證這一點,我用下面的代碼
ImageIcon accept = new javax.swing.ImageIcon(getClass().getResource("/resources/accept.png"));
ImageIcon deny = new javax.swing.ImageIcon(getClass().getResource("/resources/exclamation.png"));
public void tableChanged(TableModelEvent e) {
int row = e.getFirstRow();
double d1 = Double.valueOf(jTable.getValueAt(row, 2).toString());
double d2 = Double.valueOf(jT.getValueAt(row, 3).toString());
double d3 = Double.valueOf(jT.getValueAt(row, 4).toString());
if(d1>MAX_A||d2>MAX_B||d3>MAX_C){
jTable.setValueAt(deny, row, 5);
}
else{
jTable.setValueAt(accept, row, 5);
}
}
這個代碼是返回堆棧溢出的問題,我不知道該如何處理這個問題。
是否有任何其他方式來實現一個驗證表上的隱含多個單元?
在此先感謝。
我想通過使用try/catch和你的註釋來解決它,因爲我也在使用空值。謝謝大家! – 2010-08-22 21:15:08