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

Composants Java Discussion :

Remplir JComboBox dynamiquement à partir d'un tableau


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 11
    Par défaut Remplir JComboBox dynamiquement à partir d'un tableau
    Bonjour,

    je dois développer une application en Java mais je ne suis pas très doué. Un de mes problèmes est de remplir un JComboBox à partir d'éléments d'un tableau créé dans le modèle.
    Ma ComboBox récupère correctement les contacts que je crée dans le constructeur du modèle. Mais lorsque je veux ajouter un autre contact, à l'appui d'un bouton, il ne se passe rien. J'ai l'impression que le contact est vraiment rajouté car quand je fais afficher certains attributs pour tester cela fonctionne. En revanche, il n'y a aucune mise à jour de l'affichage.

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    /* VUE */
    // Récupération des données du tableau
    Contact[] contactList = new Contact[model.getIndex()];
            contactList = model.getListe_contact();
     
    		String[] listString = new String[model.getIndex()];
    		for(int i = 0; i < model.getIndex(); i++){
    			listString[i] = contactList[i].getNom()+" - "+contactList[i].getPrenom();
    		}
     
    	    this.labelContact = new JLabel("Contacts:");
    	    JPanel onglet2 = new JPanel();
    	    onglet2.add(labelContact);
     
    	    this.combo = new JComboBox(listString);
     
    	    combo.setEditable(false);
    	    combo.addActionListener(this);
    	    combo.setPreferredSize(new Dimension(200, 20));
    ...
     
            //model instance de ma classe Modele
            this.update(model, pannel);
     
             // à l'appui du bouton contactAjouter je rajoute un contact
             contactAjouter.addActionListener(new ActionListener() {
    		public void actionPerformed(ActionEvent e) {
    			model.addContact(new Contact("John","Rambo","0070070070"));
     
    			}
     
    	public void update (Observable observe, Object arg) {
    		this.repaint();
    		this.validate();
    	}
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    /* MODELE */
    public class Modele extends Observable implements TableModel{
     
     
     
    	private Contact[] liste_contact = new Contact[50];
    	private int index;
     
     
    	public Modele(){
    		index = 0;
    		setIndex(0);
    		setChanged();
    		notifyObservers();
    		Contact contact1 = new Contact("Ali", "G", "0102030405");
    		Contact contact2 = new Contact("Toto", "Titi", "0908070605");
    		addContact(contact1);
    		addContact(contact2);
     
    	}
     
     
        public void addContact(Contact c) {
    		this.liste_contact[this.index] = c;
    		index++;
     
            this.setChanged();
            this.notifyObservers();
            }
    Est-ce que quelqu'un aurait une solution ?


    Merci par avance

  2. #2
    Membre chevronné Avatar de toutgrego
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2013
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2013
    Messages : 217
    Par défaut
    EDIT : non j'ai mal lu ne tiens pas compte de ce message

  3. #3
    Membre chevronné Avatar de toutgrego
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2013
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2013
    Messages : 217
    Par défaut
    On peut voir la méthode
    ?

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 11
    Par défaut
    Je n'ai pas recodé cette méthode. Cela me permet simplement, dans les faits, d'actualiser ma vue en exécutant un update

Discussions similaires

  1. Réponses: 3
    Dernier message: 06/07/2010, 18h46
  2. Remplir un DataGrid à partir d'un tableau
    Par zaineb.z dans le forum VB.NET
    Réponses: 2
    Dernier message: 29/06/2010, 12h41
  3. Remplir une listview à partir d'un tableau Array
    Par Gecoo dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 29/04/2010, 17h05
  4. remplir un champ à partir d'un tableau
    Par youssef1983 dans le forum jQuery
    Réponses: 3
    Dernier message: 21/12/2009, 16h49
  5. Remplir une plage à partir d'un tableau
    Par roudy78 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 31/05/2007, 11h56

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