2013-09-24 137 views
1

如何防止JTable中的重複條目?防止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."); 
    } 
} 

回答

3

訪問表中的第一列零,即:getValueAt(row,0)。

+1

它正在工作。格雷特幫你做了@Igor – Dilini