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 :

[JButton] comportement bizarre au clic


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 22
    Par défaut [JButton] comportement bizarre au clic
    Bonjour,
    dans un cadre scolaire, nous devons réaliser une application de type picasa. J'ai une barre outil avec des JButton, représenté simplement par une image. Lorsque je clique sur ces bouttons, le comportement est un peu bizzard, la méthode ActionPerformed est parfois appelé, parfois non.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
            JButton parent = new JButton();
            parent.setIcon(new ImageIcon("parent.png"));
            parent.addActionListener(new ActionListener() {
     
                @Override
                public void actionPerformed(ActionEvent e) {
     
    System.out.println("Coucou");
                }
            });
    J'ai pensé qu'il y avait un problème de focus alors j'ai tenté avec :
    parent.setFocusable(true); et un MouseAdapter qui au passage de la souris
    fait un parent.requestFocus();

    Quelqu'un sait d'ou vient le probleme et comment y remédier ?
    Merci d'avance

  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
    Par défaut
    Ca n'a rien à voir avec le focus.
    Si tu développes sous eclipse et que tu contrôles l'appel des boutons via le message System.out, il faut noter que la console n'affiche pas toujours en temps réel les messages de log.

    Il n'y a absolument aucune raison qu'un clic sur un JButton n'appelle pas l'action listener associé. Sinon c'est que tu as peut-être des listeners souris mal placés qui capturent l'évènement avant.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 22
    Par défaut
    Enfaite le print servait juste ensuite de test à un exemple plus simple, le vrai code est:

    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
    public class ControleurGetPere implements ActionListener {
     
            private VignettesListModel model;
     
     
            public ControleurGetPere(VignettesListModel model){
     
                this.model=model;
     
            }
     
        public void actionPerformed(ActionEvent e) {
     
     
            Dossier modelA=(Dossier)model.getModelAdapte();
     
            if(modelA!=null && modelA.getPere()!=null){
     
                model.setModelAdapte((Dossier)modelA.getPere());
            }
     
        }
     
     
    }

    Mais le meme code utilisé avec une action sur un JMenuItem marche super bien.

    J'ai également un autre bouton sur cette barre d'outil qui lance la diaporama,
    meme problème, la diaporama se lance parfois, et parfois rien

    Il doit bien avoir une explication

  4. #4
    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
    Par défaut
    Difficile à dire.

    A part que la condition if(modelA!=null && modelA.getPere()!=null) n'est pas toujours vérifiée.

    Tu devrais coder un else pour tester genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    if(modelA!=null && modelA.getPere()!=null){
        model.setModelAdapte((Dossier)modelA.getPere());
    } else {
        JOptionPane.showMessageDialog(evt.getSource(), "oups");
    }

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 22
    Par défaut
    Ben justement si je met un message avant le if ca ne l'affiche que de temps en temps, c'est pour ca que j'ai reduit a "coucou" pour tester

  6. #6
    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
    Par défaut
    Désolé mais ça va être difficile de t'aider là, ton problème est sûrement situé ailleurs ou alors tu utilises une JVM non-Sun (mais elle serait bien naze de planter là-dessus) ?

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

Discussions similaires

  1. Comportement bizarre de mes FPS
    Par Ekinoks dans le forum OpenGL
    Réponses: 7
    Dernier message: 22/08/2005, 15h14
  2. xsl:test .... avec comportement bizarre
    Par Blue LC dans le forum XMLRAD
    Réponses: 2
    Dernier message: 10/06/2005, 13h56
  3. [ACESS][MEMO][ISNULL]Comportement bizarre
    Par seb.49 dans le forum ASP
    Réponses: 2
    Dernier message: 09/06/2004, 10h44
  4. [HttpClient] comportement bizarre, saute des catch()...
    Par iubito dans le forum Développement Web en Java
    Réponses: 4
    Dernier message: 04/02/2004, 15h25
  5. [Sybase] Comportement bizarre d'une table
    Par sdozias dans le forum Sybase
    Réponses: 4
    Dernier message: 03/02/2004, 10h39

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