で複数の行を削除するポップアップ メニューがありますJTable
。このテーブルには、ブール値 (true/false) を持つ列があります。この列の値が true の場合、この行を削除します。しかし、選択されたインデックス配列は間違っています。例: インデックス付きの選択行は 2,3,4 ですが、結果は 0,2,3 です。最初の行は常に選択されていました。条件なしで複数の行を選択すると、結果は正しいです。
誰でも私を助けることができますか?
これはサンプルコードです (Netbeans を使用):
private void menuDeleteLOANActionPerformed(java.awt.event.ActionEvent evt) {
int[] rows = this.tabMAIN.getSelectedRows();
try {
for(int i = rows.length-1; i >= 0; i--){
boolean temp = ((Boolean)this.tabMAIN.getValueAt(i, 8)).booleanValue();
if(temp == true){
System.out.println("ID "+this.tabMAIN.getValueAt(i, 3)+((Boolean)this.tabMAIN.getValueAt(i, 8)).booleanValue());
}else{
System.out.println("ID "+this.tabMAIN.getValueAt(i, 3)+((Boolean)this.tabMAIN.getValueAt(i, 8)).booleanValue());
}
}
} catch (Exception ex) {
Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
}
}