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

Collection et Stream Java Discussion :

Affichage élément d'un Arraylist


Sujet :

Collection et Stream Java

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5
    Par défaut Affichage élément d'un Arraylist
    Bonjour à tous,
    donc voilà j'ai un petit problème concernant l'affichage d'élément d'une arraylist

    j'ai donc créer une nouvelle liste d'objets commande (comportant le nom du client et ses coordonnées géographiques)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    private static ArrayList<Command> arrList = new ArrayList<Command>();
    Je choisi un client parmis ceux présent dans la ComboBox

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    ComboBoxModel jComboBox1Model = new DefaultComboBoxModel(						new String[] {  });
    jComboBox2 = new JComboBox();
    jComboBox2.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent evt) {
    selectClient1();
    }
    });
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    private void selectClient1() {
    int index = jComboBox2.getSelectedIndex();
    if (index >= 0) {
    client1 = clientDataBase.get(index);
    jLabel22.setText(client1.getName());
    } else
    client1 = null;
    }
    Je valide ensuite la commande et je l'ajoute donc à ma liste

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    jBValider1 = new JButton();
    jBValider1.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent evt) {
    Command commande=new Command(client1.getName(),client1.getxCoordinate(),client1.getyCoordinate());
    arrList.add(commande);
    Sachant que j'ai plusieurs client, je peux donc avoir plusieurs commandes, c'est donc ici que ça coince, lorsque je souhaite afficher les différents noms des clients qui ont passé une commande, ça m'affiche seulement le nom du client correspondant à la derniere commande passée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    jBAfficher = new JButton()
    jBAfficher.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent evt) {
    for (Command commande : arrList) {
    jLabel24.setText(commande.getNomClient());
    }
    }
    });
    j'espère avoir été assez clair
    merci d'avance pour votre aide et bonne soirée

  2. #2
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    c'est normal, tu boucle sur setText, forcément, le JLabel aura donc le texte de la dernière itération de la boucle.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5
    Par défaut
    En effet, merci pour la réponse.
    Auriez vous une idée pour contourner le problème ?

  4. #4
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    y a plein de solution, tout dépend de ce que tu veux comme résutat. Tu peux tout affiche dans une JList, ou utiliser un JTextPane auquel tu file un texte de plusieurs lignes.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5
    Par défaut
    Voilà, j'ai décider à la place du JLabel qui n'est pas approprié de choisir un JTextArea, et ça marche parfaitement (surtout pour les sauts de ligne)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    public void actionPerformed(ActionEvent evt) {
    String noms="";
    for (Command commande : arrList) {
    noms=noms+"\n"+commande.getNomClient();
    }
    jTCommande.setText(noms);
    }
    merci pour votre aide

Discussions similaires

  1. Affichage d'éléments d'un ArrayList
    Par tamerla dans le forum Collection et Stream
    Réponses: 15
    Dernier message: 24/02/2014, 23h34
  2. Affichage des éléments d'une ArrayList
    Par Centauri dans le forum Collection et Stream
    Réponses: 14
    Dernier message: 12/02/2008, 03h07
  3. affichage éléments arraylist
    Par jEff57 dans le forum VB.NET
    Réponses: 3
    Dernier message: 06/08/2007, 17h14
  4. Réponses: 3
    Dernier message: 06/09/2006, 12h43
  5. Réponses: 7
    Dernier message: 16/05/2006, 15h40

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