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 :

JPanel avec l'outil Matisse


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 187
    Par défaut JPanel avec l'outil Matisse
    Bonjour,
    je dois créer un JPanel avec Matisse, je l'ai plus ou moins terminé mais il me reste quelques détails à régler.

    1)Dans mon JPanel, j'ai deux RADIO BUTTON, un contenant FILLE et l'autre contenant GARCON. Seulement, il y a moyen de cliquer sur fille et garcon en meme temps, c'est à dire que les petites boules noires se mettent dans les deux petits ronds. Comment faire pour empêcher celà (pouvoir sélectionner soit FILLE soit GARCON)? Ce point est réglé, il faut ajouter un BUTTON GROUP

    2)J'ai un ComboBox contenant les choix suivant : Madame, Monsieur, Mademoiselle. Pour le moment, les trois possibilités se trouvent dans le menu déroulant. Seulement, quand je sélectionne GARCON (voici point1), le menu déroulant ne doit contenir que MONSIEUR et quand je choisis FILLE Madame ou Mademoiselle?

    Merci d'avance

  2. #2
    Membre Expert
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 052
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 052
    Par défaut
    Citation Envoyé par alex2746 Voir le message
    quand je sélectionne GARCON, le menu déroulant ne doit contenir que MONSIEUR et quand je choisis FILLE Madame ou Mademoiselle?
    Tu doit écouter la sélection du JRadioButton (avec un ActionListener je pense).
    Dès lors tu met à jour la liste de la JComboBox en passant par son model (DefaultComboBoxModel probablement).

  3. #3
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 187
    Par défaut
    J'ai essayé de le faire mais il reste un problème : par défaut, GARCON est sélectionné et donc le ComboBox contient uniquement MONSIEUR.
    Quand on clique sur FILLE, MONSIEUR est supprimé du ComboBox et MADAME et MADEMOISELLE sont ajoutées.
    Si je clique sur GARCON, MADAME ET MADEMOISELLE sont supprimées et MONSIEUR ajoutée, jusque là tout va bien.

    Seulement si je clique une autre fois sur GARCON, MONSIEUR est encore ajoutée, et ainsi de suite, et donc je me retrouve avec plusieurs MONSIEUR dans ma ComboBox... Savez vous d'ou ce problème peut venir?

    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
     
    /*par défaut, GARCON sélectionne et donc ComboBox ne contient que MONSIEUR*/
    JRadioButton2.addActionListener(new ActionListener() {
     
                public void actionPerformed(ActionEvent e) {
                     if (JRadioButton2.isSelected()) {
                        JComboBox1.addItem("Madame");
                        JComboBox1.addItem("Mademoiselle");
                        JComboBox1.removeItem("Monsieur");
                    }
     
                }
            });
     
    JRadioButton1.addActionListener(new ActionListener() {
     
                public void actionPerformed(ActionEvent e) {
                    if (JRadioButton1.isSelected()) {
                        JComboBox1.removeItem("Madame");
                        JComboBox1.removeItem("Mademoiselle");
                        JComboBox1.addItem("Monsieur");
                    }
     
                }
            });

  4. #4
    Membre Expert
    Avatar de visiwi
    Profil pro
    Inscrit en
    Février 2008
    Messages
    1 052
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 1 052
    Par défaut
    Utilise plutôt la méthode removeAllItems() qui supprimera tous les items du combo avant d'ajouter de nouveau item.

    Sinon tu peux avoir deux model différents que tu passe au combo suivant le radio sélectionné, en faisant un test pour savoir si il change ou pas (manière surement meilleure).

    En ce qui concerne :
    par défaut, GARCON est sélectionné et donc le ComboBox contient uniquement MONSIEUR.
    Ajouter le listener sur les radioButton avant de faire radio.setSelected(true) règlera peut-être le problème (je suis pas sur). Sinon, si tu gère ton code mettant a jour les items de la combo dans deux méthodes particulières (Garçon, fille), il te suffit d'appeler la méthode pour GARCON au départ.

  5. #5
    Membre confirmé
    Inscrit en
    Mai 2008
    Messages
    187
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 187
    Par défaut
    Merci

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

Discussions similaires

  1. Interchanger un JPanel avec un autre
    Par jfz dans le forum Agents de placement/Fenêtres
    Réponses: 10
    Dernier message: 09/01/2010, 20h38
  2. JScrollBar dans JPanel avec barres d'outils
    Par L. Sierra dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 01/10/2008, 18h16
  3. [Swing] JPanel avec sa JScrollBar qui scrolle toute seule
    Par chcoust dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 22/11/2006, 14h37
  4. Problème avec l'outil profile
    Par befb dans le forum MFC
    Réponses: 2
    Dernier message: 07/05/2005, 14h52

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