我使用了详细的表格模型
DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
我排计数
int Row = model.getRowCount();
这是我添加行并希望在添加相同项目时显示错误。
if (Row > 0) {
for(i=0;i<Row; i++){
if(jTable1.getValueAt(i,0).equals(name.getText())){
JOptionPane.showMessageDialog(null, "Can't add same item");
}
}
}else if (Row <99) {
model.addRow(new Object[] {name.getText(),address.getText(),Integer.parseInt(age.getText())});
}
我猜错了if else声明? 因为我可以添加第1行而我无法添加第2行。
感谢您的帮助
答案 0 :(得分:0)
不确定你在其他变量中有什么,但我猜你在product_id和name之间有差异吗?
不会更像是
if(jTable1.getValueAt(i,0).equals(name.getText())){
更新:
尝试重写它:
int Row = model.getRowCount();
int boolean exists = false;
for(i=0;i<Row; i++){
if(jTable1.getValueAt(i,0).equals(name.getText())){
JOptionPane.showMessageDialog(null, "Can't add same item");
exists = true;
break;
}
}
if (!exists && Row < 99) {
model.addRow(new Object[] {name.getText(),address.getText(),Integer.parseInt(age.getText())});
}