IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

NetBeans Platform Java Discussion :

jcombobox en netbeans


Sujet :

NetBeans Platform Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Août 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 20
    Par défaut jcombobox en netbeans
    salut,
    je veux dans une application netbeans faire la gestion des produits ,et chaque produit appartient à une famille ,donc j'ai deux table une pour les produits et une pour les familles lié avec une clé etranger :codefamille.
    je veux dans l'application lorsq on cherche à ajouter un produit,il y aura dans l'interface une zone de text pour le code produit et un combobox qui va afficher les designation de famille .la table produit contient trois champs:codeproduit,codefamille,liblléproduit.
    ma question c'est comment vais je programmer le jcombobox de tel sort à ce qu'il m'affiche les designation famille mais en meme tamps le programmer pour qu il contient aussi les codes familles .voilà mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
      private void jComboBox1FocusGained(java.awt.event.FocusEvent evt) {                                       
            // TODO add your handling code here:
             String s;
            ResultSet r;
             try {
                s = "select * from famille";
           r = stmt.executeQuery(s);
         this.jComboBox1.removeAll();
     
    int i=0;
                while(r.next())
     
         {
                    this.jComboBox1.addItem(String.valueOf(r.getString(2)));
                    //this.jComboBox1.addFocusListener(l);
     
     
     
                }
            } catch (SQLException ex)
     {JOptionPane.showMessageDialog(null,ex.getMessage());}
    j'espere que vous avez compris ma question

  2. #2
    Membre averti
    Inscrit en
    Août 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 20
    Par défaut
    c'est à dire ce qui remplace dans netbeans le code de vb suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ComboBox1.DataSource = ds.Tables("famille")
            ComboBox1.DisplayMember = "designation"
            ComboBox1.ValueMember = "codefamille"

  3. #3
    Membre émérite Avatar de herch
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    655
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2006
    Messages : 655
    Par défaut
    salut,

    tu pourrais créer une petite classe FamilleProduit qui auraient deux attributs: code et désignation, et tu devras aussi redéfinir toString() pour qu'elle retourne la désignation, parce que c'est ce qu'affichera la jcombobox

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    class FamilleProduit {
     
    	private String code;
    	private String designation;
     
    	FamilleProduit(String code, String designation) {
    		this.code = code;
    		this.designation = designation;
    	}
    	public String toString() {
    		return designation;
    	}
    	String getDesignation() {
    		return designation;
    	}
    	String getCode() {
    		return code;
    	}
    }
    et alors, lorsque tu voudras ajouter un élément à ta combobox

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this.jComboBox1.addItem(new Familleproduit(leCodeFamille, DesignationFamille));
    et lorsque tu voudras récupérer le codeFamille d'un élément de la combobox, disons le premier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Familleproduit f = (Familleproduit)jComboBox1.getItemAt(0);
    String code = f.getCode();

  4. #4
    Membre averti
    Inscrit en
    Août 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 20
    Par défaut
    merci,mais comment puis je utiliser ce code si je veux recuperrer les donnés de la base de donnée ,et dans quel evenement de jcombobox je vais coder.
    dans quel evenement je vais metre
    this.jComboBox1.addItem(new Familleproduit(leCodeFamille, DesignationFamille));

    et:
    Familleproduit f = (Familleproduit)jComboBox1.getItemAt(0);
    int code = f.getCode();
    est ce que c'est dans :
    private void jComboBox1FocusGained(java.awt.event.FocusEvent evt) { }
    merci

  5. #5
    Membre émérite Avatar de herch
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    655
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2006
    Messages : 655
    Par défaut
    dans ton code, il y avait ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
        ResultSet r;
         try {
         s = "select * from famille";
         r = stmt.executeQuery(s);
        this.jComboBox1.removeAll();
        int i=0;
        while(r.next()) 
         {
                    this.jComboBox1.addItem(String.valueOf(r.getString(2)));
                    //this.jComboBox1.addFocusListener(l);
         }
    et bien tu remplaces l'ajout à la combo par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
         while(r.next()) 
         {
                    this.jComboBox1.addItem(new FamilleProduit(r.getString(1), r.getString(2)));
         }
    ici je suppose qu'il y a le code en premier et la désignation en deuxième dan ta table famille

    et ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    FamilleProduit f = (FamilleProduit)jComboBox1.getItemAt(0);
    String code = f.getCode();
    tu le mets là où tu as besoin du code famille, c'est à toi de voir où, puisque le but premier de ta question était de récupérer le code de famille depuis la combo. là c'est juste un exemple qui retourne le premier élément de la combo

Discussions similaires

  1. JCombobox en NetBeans avec base de données
    Par patnership2013 dans le forum NetBeans
    Réponses: 3
    Dernier message: 21/11/2013, 14h47
  2. JComboBox+JTable sous netbeans
    Par boughanirafik dans le forum NetBeans
    Réponses: 2
    Dernier message: 21/05/2010, 18h38
  3. Netbeans JComboBox java.lang.ClassCastException
    Par yLaplace dans le forum NetBeans
    Réponses: 2
    Dernier message: 30/09/2009, 09h44
  4. Réponses: 7
    Dernier message: 17/04/2007, 13h51
  5. [NetBeans] JComboBox
    Par Nadia_81 dans le forum NetBeans
    Réponses: 1
    Dernier message: 24/05/2005, 04h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo