2012-04-08 3 views
0

У меня есть метод, который заполняет поле со списком из базы данных. Он делает это, используя идентификатор врачей, чтобы заполнить его. Проблема в том, что когда я меняю идентификатор на другого, вместо того, чтобы очищать поле со списком, а затем заполнять его снова, он просто добавляется в конец списка.удалить элементы из combobox

public void FillTimings() { 
    theapptTime.removeAllItems(); 
    theapptTime.repaint(); 

    String strDate = theTdate.getText().trim(); 

    String strDoctor = (String) theTstaffname.getSelectedItem(); 
    System.out.println(strDoctor); 

    try { 
     db.dbConnect(); 
     String docId = db.getdociD(strDoctor); 
     ResultSet rs = db.getTimings(strDate, docId); 

     while (rs.next()) { 
      theapptTime.addItem(rs.getString(1)); 
      rs.close(); 
     } 
    } catch (SQLException e1) { 
     System.out.println("fail"); 
     e1.printStackTrace(); 
    } 
} 

Это код.

Может кто-нибудь мне помочь.

+0

Было бы полезно, если бы вы добавить тег для языка программирования. Это может привлечь внимание правильных людей здесь. – DOK

+0

Проверьте эту ссылку: http://support.microsoft.com/kb/319927 –

+1

Чтобы лучше помочь, опубликуйте [SSCCE] (http://sscce.org/). Но, как упоминалось в документе, отмените данные D/B & вместо этого, а затем скопируйте некоторые данные. –

ответ

0

Вы должны сначала Объявите DefaultComboBoxModel

DefaultComboBoxModel dt=new DefaultComboBoxModel(); 

установить модель комбинированного окна для этой модели

theapptTime.setModel(dt); 

следующий внутри кода обновить его до

db.dbConnect(); 
    String docId = db.getdociD(strDoctor); 
    ResultSet rs = db.getTimings(strDate, docId); 
    dt.removeAllElements(); 
    while (rs.next()) { 
     dt.addElement(rs.getString(1)); 
     rs.close(); 
    } 

это будет Работа!! ура !!

+0

Я пробовал делать это, но все еще не работал – user1236260

+0

где вы устанавливаете модель combobox ?? после того, как я объяснил, что происходит ??? хорошо, если вы можете публиковать код и что выводить, чтобы я мог советовать вам дальше. Я сделал пример приложения и его работу отлично –

0

Попробуйте это:

DefaultComboBoxModel dt = (DefaultComboBoxModel) theapptTime.getModel(); 
dt.addElement("item 1"); 
Смежные вопросы