2014-10-19 4 views
-1

У меня есть программа для записи программы, у которой есть 2 кадра один кадр для добавления элемента и сохранения в базу данных в другом кадре Мне нужно выбрать элемент, который добавляется в первый кадр в JComboBox Я пишу что код для вставки данных в базу данных, но я не знаю, как отобразить в JComboBoxКак вставить данные в JComboBox с помощью JTextField

try { 
    String host = "jdbc:derby://localhost:1527/PROCAT"; 
    String uName = "zain"; 
    String uPass = "zain"; 
    con = DriverManager.getConnection(host, uName, uPass); 
    String m = "insert into ITEMB (ITEM,ITEMNAME,PRISE) values(?,?,?)"; 
    ps = con.prepareStatement(m); 
    ps.setInt(1, Integer.parseInt(jTextField3.getText())); 
    ps.setString(2, jTextField2.getText()); 
    ps.setString(3, jTextField4.getText()); 
    ps.executeUpdate(); 
    JOptionPane.showMessageDialog(null, "record saved"); 
} catch (Exception ex) { 
    JOptionPane.showMessageDialog(null, ex); 
} 

это для JComboBox:

try 
{ 

    String host = "jdbc:derby://localhost:1527/PROCAT"; 
    String uName = "zain"; 
    String uPass = "zain"; 
    con = DriverManager.getConnection(host,uName,uPass); 

    st = con.createStatement(); 
    rs = st.executeQuery("select ITEMNAME from ITEMB;"); 
    while (rs.next()) { 
     jCom.addItem(rs.getString("ITEMNAME")); 
    } 

} 
catch(Exception ex) { 
    JOptionPane.showMessageDialog(null,ex); 
} 
+0

Я не знаю, если его мне, но я не понял ваш вопрос. Что должны делать ваши фреймы и где вы застряли/где программа не делает то, что вы хотите? – msrd0

+0

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

+0

Парень, который ответил на ваш вопрос, попытался сделать ваш вопрос ясным. Если он прав, вы должны подумать о редактировании информации в свой вопрос. – msrd0

ответ

0

на моем понимании, есть 2 кадра. Один из них предназначен для просмотра записей и имеет JComboBox, другой - для вставки записей и имеет JTextField.

Рамка по умолчанию будет таковой с JComboBox. Если вы хотите добавить новую запись в JComboBox, появится рамка для добавления записей.

После выдачи выписок INSERT рамка с JTextField будет закрыта, и появится рамка с JComboBox с новыми добавленными записями.

Вы можете указать кнопку перезагрузки для удаления элементов внутри JComboBox, а затем перезагрузить данные с помощью инструкции SELECT.

while (rs.next()) { 
    jComboBox.addItem(rs.getString("ITEMNAME")); 
} 

А затем используйте

jComboBox.repaint(); 
+0

- это именно то, что я пытаюсь сделать, я не получил, как использовать repaint() – mohza

+0

Возможно, использование jComboBox.updateUI() –

+0

@marionjeff 'updateUI' не имеет ничего общего с недействительным или перекрашиванием компонента, это побочные эффекты, «updateUI» связан с повторным применением делегата внешнего вида, который не является быстрым процессом и его следует избегать, если вы не изменили внешний вид и ощущения каким-то существенным образом ... – MadProgrammer