Recuperer une valeur d'un Jcombo

Signaler
-
Messages postés
125
Date d'inscription
jeudi 26 mai 2005
Statut
Membre
Dernière intervention
22 septembre 2019
-
Bonjour,
Je suis debutant en java et je suis bloqué sur un truc.
J'ai une table pays(Id,libelle) dont jarrive à afficher le libellé dans le Jcombobox.
Mais j'aimerais faire une requête insert into Tbl(nom, prenom, PaysId) value(tnom.getText(), tpre.getText(), tpaysId.getselectedItem())

jaimerais inserer le code du pays et non le libellé.
Merci d'avance pour votre aide.
A voir également:
  • Jcombo
  • Récupérer valeur combobox java - Meilleures réponses
  • Getselecteditem java - Meilleures réponses
  • Jcombo box - Forum - Java

3 réponses

Messages postés
5365
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
12 août 2021
111
Salut,

C'est ça que tu veux faire ?

Le modele Country.java:
public class Country {

  private String code;
  private String name;

  public Country(final String code, final String name) {
    this.code = code;
    this.name = name;
  }

  public String getCode() {
    return code;
  }

  public void setCode(final String code) {
    this.code = code;
  }

  public String getName() {
    return name;
  }

  public void setName(final String name) {
    this.name = name;
  }

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



Le code test avec le combo Test.java:

import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.DefaultComboBoxModel;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JOptionPane;


public class Test extends JFrame {

  public Test() {
    setSize(300, 300);
    setLocationRelativeTo(null);
    setDefaultCloseOperation(EXIT_ON_CLOSE);
    getContentPane().setLayout(new FlowLayout());
    
    /* ajout de quelques pays au model du combo */
    DefaultComboBoxModel<Country> model = new DefaultComboBoxModel<Country>();
    model.addElement(new Country("FR", "France"));
    model.addElement(new Country("US", "USA"));
    /* création du combo avec son model */
    final JComboBox<Country> countries = new JComboBox<Country>(model);
    /* action sur sélection d'un item */
    countries.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        Country c = (Country)countries.getSelectedItem();
        String str ="<html>Country name: " + c.getName() + "<br>Country code: " + c.getCode() + "</html>";
        JOptionPane.showMessageDialog(Test.this, str);
      }
    });
    
    add(countries);
  }
  
  public static void main(String[] args) {
    new Test().setVisible(true);
  }
  
}


Merci pour votre reponse. Je pense que cela pourait résoudre mon problème.
Messages postés
125
Date d'inscription
jeudi 26 mai 2005
Statut
Membre
Dernière intervention
22 septembre 2019

J'ai fais un test et c'est a peut près ce que je veux. Par contre je recuperer les valeur d'une table sql

Rs2 =St3.executeQuery("SELECT Code_Type, Libelle_Type FROM Type " );
Cbx_Typ.addItem("");
while(Rs2.next()){
Cbx_Typ.addItem(Rs2.getString(1).trim());
Cbx_Typ.addItem(Rs2.getString(2).trim());
}

Ensuite je fais un insert et je veux recuperer cette valeur (Cbx_Typ.addItem(Rs2.getString(1).trim()); )
 St2.executeUpdate("INSERT INTO Bande(Num_Bande ,Date_Enreg ,Nbre_sujet ,Type )VALUES ('"+NumBd.getText().trim()+"',GETDATE(),'"+TxtSujet.getText().trim()+"','"+Cbx_Typ.getSelectedItem()+"' ) "); 



--