如何防止JTable
中的重复条目?
我想停止在表格中输入重复数据。我试过下面的绳索。但它没有用。我的第一个列名是item id
。所以我使用了jtable.getValueAt(i, 1)
。那是错的。
public void lordTable(JTable jtable, JTextField txtItemID, JTextField txtName, JTextField txtQty, JTextField txtUp) {
String s = "";
boolean exists = false;
for (int i = 0; i < jtable.getRowCount(); i++) {
s = jtable.getValueAt(i, 1).toString().trim();
if (txtItemID.getText().equals("")) {
JOptionPane.showMessageDialog(null, "Enter Invoice Details First");
} else {
if (txtItemID.getText().equals(s)) {
exists = true;
break;
}
}
}
if (!exists) {
DefaultTableModel dd = (DefaultTableModel) jtable.getModel();
Vector v = new Vector();
v.add(txtItemID.getText());
v.add(txtName.getText());
v.add(txtQty.getText());
v.add(txtUp.getText());
Double val = (Double.parseDouble(txtUp.getText())) * (Double.parseDouble(txtQty.getText()));
v.add(val);
dd.addRow(v);
} else {
JOptionPane.showMessageDialog(null, "data already exist.");
}
}
答案 0 :(得分:4)
访问表中第一列为零,即:getValueAt(row,0)。