combobox java帮助恢复selectedItem的ID

combobox java帮助恢复selectedItem的ID,java,Java,我是java初学者,我想在两个表(供应商,工件)上使用组合框。我加载我的提供者组合框,但我希望当我单击供应商时,我可以获取其ID并将其插入工件。我的问题是检索组合框中所选供应商ID的代码,请帮助我,这是我的代码: private void Fillcombo(){ String sql ="select * from fournisseur"; try{ stm = conn.obtenirconnexion().createStatement(); Rs = stm

我是java初学者,我想在两个表(供应商,工件)上使用组合框。我加载我的提供者组合框,但我希望当我单击供应商时,我可以获取其ID并将其插入工件。我的问题是检索组合框中所选供应商ID的代码,请帮助我,这是我的代码:

private void Fillcombo(){

 String sql ="select * from fournisseur";
 try{

     stm = conn.obtenirconnexion().createStatement();
     Rs = stm.executeQuery(sql);
     while(Rs.next()){
           String f= Rs.getString("nomFournisseur");
           txt_f.addItem(f);
     }
 }catch(Exception e){ 
     JOptionPane.showMessageDialog(null, e);
 }

您需要的是能够在组合框中呈现有关供应商的描述/名称,但当您在组合框中选择描述/名称时,您希望能够检索供应商对象

JCombobox自然随它而来。您可以将字符串以外的对象添加为JCombobox中的项,JCombobox将使用对象的toString()方法来呈现它,而JCombobox.getSeletecedItem()仍将提供完整的对象

因此,您可以执行以下操作:1)定义供应商类(您可以对工件类执行相同的操作)2)使用从数据库加载的数据创建供应商对象3)覆盖toString()方法添加到要在JCombobox中显示的文本中4)将供应商对象添加到JCombobox中5)对所选供应商执行任何需要执行的操作

例如:

import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class Vendor {
String name;
int ID;

@Override
public String toString() {
    return name;
}

public Vendor(String name, int ID) {
    this.name = name;
    this.ID = ID;
}

public static void main(String[] args) {
    Vendor[] vendors = {new Vendor("Apple", 1)
            , new Vendor("Microsoft", 2)
            , new Vendor("Google", 3)};

    final JComboBox comboBox = new JComboBox(vendors);

    JFrame jFrame = new JFrame();
    jFrame.add(comboBox);
    jFrame.setVisible(true);
    jFrame.pack();

    comboBox.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            Vendor selectedVendor = (Vendor) comboBox.getSelectedItem();
            System.out.println(selectedVendor.name + ", " + selectedVendor.ID);
            // do whatever here you need to do with the ID of vendor
        }
    });
}
}

你到底有什么问题?你期望得到什么?你实际得到了什么?谢谢邦德先生:我使用netbenas,因为当我在组合框中选择一个供应商时,我想检索id;我需要在另一个表中插入的id。如果我可以有一个完整的示例代码,因为我是在java中首次使用的,谢谢!!!宽容点,我会说法语,我的英语很差,谢谢@不客气。我给出的代码是一个完整的运行示例,您可以用逻辑替换注释,将id插入到您提到的表中。