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 :

Probleme JList et selectedValue


Sujet :

Composants Java

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2010
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 56
    Points : 52
    Points
    52
    Par défaut Probleme JList et selectedValue
    Bonjour,
    j'ai un petit soucis avec ma JList, le problème est que quand je sélectionne un nom dans cette liste, et que j'aimerai récupérer la valeur selectionnée via getSelectedValue, il me l'affiche deux fois...
    J'ai donc remarquer que mon ListSelectionListener se lance deux fois lorsque je clique sur un des items de la Jlist...
    Si quelqu'un a une idée , voici 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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    void buildContactList(){
            System.out.println("lancement fonction build");
            listeContact.add("premiercontact");
            listeContact.add("deuxiemecontact");
            jList1.setModel(new javax.swing.AbstractListModel() {
                public int getSize() {
                    return listeContact.size();
                }
                public Object getElementAt(int i) {
                    return listeContact.get(i);
                }
            });
            jList1.addListSelectionListener(new TabbedListener());
        }
        public class TabbedListener implements ListSelectionListener
        {
            public void valueChanged(ListSelectionEvent e) {
                System.out.println("x");
                selectionList(e);
            }
     
        }
        private void selectionList(javax.swing.event.ListSelectionEvent evt) {
            System.out.println("test");
            System.out.println("tu as lique sur:"+this.jList1.getSelectedValues());
            runTest();
     
        }
     
     
        public void runTest() {
                String title = (String)jList1.getSelectedValue();
                jTabbedPane1.add(title, new JTextPane());
            jTabbedPane1.setTabLayoutPolicy(JTabbedPane.SCROLL_TAB_LAYOUT);
        }
    Merci d'avance pour l'aide

  2. #2
    Membre expert
    Avatar de natha
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 2 346
    Points : 3 083
    Points
    3 083
    Par défaut
    Il ne faut réagir que sur le "vrai" event. A savoir l'event qui n'est pas un event d'ajustement de valeur. Ce qui se teste via
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ListSelectionEvent#getValueIsAdjusting()
    Donc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public class TabbedListener implements ListSelectionListener {
            public void valueChanged(ListSelectionEvent e) {
                if (!e.getValueIsAdjusting()) {
                    System.out.println("x");
                    selectionList(e);
                }
            }
    }
    Et ça devrait fonctionner
    Comment ça ? La réponse à ton problème n'est ni dans la faq, ni dans les tutos, ni dans sources ??? Etonnant...
    De la bonne manière de poser une question (et de répondre).
    Je ne fais pas de service par MP. Merci (...de lire les règles...).
    Ma page dvp.com

  3. #3
    Membre du Club
    Inscrit en
    Janvier 2010
    Messages
    56
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 56
    Points : 52
    Points
    52
    Par défaut
    Merci chef ca fonctionne parfaitement maintenant .

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Probleme JList / JList Model / Evolution dynamique
    Par SebastianPx dans le forum Composants
    Réponses: 1
    Dernier message: 10/02/2009, 12h14
  2. [VB.NET]probleme avec listbox.selectedvalue
    Par elastoplas dans le forum ASP.NET
    Réponses: 9
    Dernier message: 07/11/2006, 14h13
  3. [SWING] Probleme actualisation Jlist
    Par MaxiMax dans le forum Composants
    Réponses: 1
    Dernier message: 24/01/2006, 10h21
  4. [Evenement] Probleme avec un JList
    Par mawashee dans le forum Composants
    Réponses: 3
    Dernier message: 06/12/2004, 18h45
  5. [JList] probleme avec le ListSelectionListener
    Par dzincou dans le forum Composants
    Réponses: 4
    Dernier message: 06/12/2004, 11h55

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