2011-11-03 187 views
0

所以我有一个列表,当用户选择一个项目并点击删除时,我希望它从记录存储删除记录。这里是我的代码不起作用:删除记录记录存储

i = list.getSelectedIndex(); 

RecordEnumeration re = null; 
try { 
    re = rs.enumerateRecords(null, null, true); 
} 
catch (RecordStoreException rse) 
{ 
} 

try { 
    rs.deleteRecord(i); 
} catch (RecordStoreNotOpenException ex) { 
    ex.printStackTrace(); 
} catch (InvalidRecordIDException ex) { 
    ex.printStackTrace(); 
} catch (RecordStoreException ex) { 
    ex.printStackTrace(); 
} 

它引发InvalidRecordIDException。我尝试输入一个手动值,这也从来没有工作。

回答

2

请参阅此示例代码删除RecordStore中的记录。

int i = 0; 
String listValue = list.getString(list.getSelectedIndex()); 
while(e.hasNextElement()) { 

    String value = new String(e.nextRecord()); 
    if(value.equals(listValue)) { 
     s.deleteRecord(i); 
     s.closeRecordStore(); 
    } 
    i++; 
} 

欲了解更多信息,请看这篇文章的。

0
if (c == c3) { 
     try { 
      int ind = v1.getSelectedIndex(); 
      String rerds = (String) vect.elementAt(ind); 
      int i = Integer.parseInt(rerds); 
      rc.deleteRecord(i); 
      Alert al = new Alert("Success", "Successfully Deleted", null, AlertType.ALARM); 
      Display.getDisplay(this).setCurrent(al); 
      loadata(); 
     } catch (RecordStoreException ex) { 
      ex.printStackTrace(); 
     } 
    }