Syntax Evenement sur une image [Résolu/Fermé]

Signaler
Messages postés
12
Date d'inscription
samedi 2 août 2003
Statut
Membre
Dernière intervention
28 février 2007
-
Messages postés
12
Date d'inscription
samedi 2 août 2003
Statut
Membre
Dernière intervention
28 février 2007
-
bonjour, je voudrais mettre un evenement different sur chacune de mes images. Peut on comme pour un ActionListener faire un truc du genre :

// ici pour un button,
monButton.addActionListener(
    new ActionListener(){
       public void actionPerformer(ActionEvent e){
               //  le truc a faire
       }
    }
);

// quelle est la syntax pour une image se trouvant dans un JLabel
// car la syntax suivante ne marche pas

JLabel search = new JLabel(new ImageIcon("img/search.gif"));
        search.addMouseListener(new MouseListener(MouseEvent l){
                      public void mouseEntered(MouseEvent e) {
                            // truc a faire    
                    }
                }   
            );

COMMENT DOIS JE FAIRE...
Merci pour votre aide :)

3 réponses

Messages postés
5360
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
25 janvier 2021
108
Salut,

MouseListener  doir absolument implementer toutes les methodes soit :

void
,
mouseClicked(MouseEvent e)


          Invoked when the mouse button has been clicked (pressed
and released) on a component., ----
 void
,
mouseEntered(MouseEvent e)


          Invoked when the mouse enters a component., ----
 void
,
mouseExited(MouseEvent e)


          Invoked when the mouse exits a component., ----
 void
,
mousePressed(MouseEvent e)


          Invoked when a mouse button has been pressed on a component., ----
 void
,
mouseReleased(MouseEvent e)


          Invoked when a mouse button has been released on a component.

contrairement a MouseAdapter donc tu peux faire
JLabel search = new JLabel(new ImageIcon("img/search.gif"));
        search.addMouseListener(new MouseAdapter(){
                      public void mouseEntered(MouseEvent e) {
                            // truc a faire    
                    }
                }   
            );

sinon correction de ton code
JLabel search = new JLabel(new ImageIcon("img/search.gif"));
        search.addMouseListener(new MouseListener(){
                      public void mouseEntered(MouseEvent e) {
                            // truc a faire    
                    }
                }   
            );

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
Messages postés
2333
Date d'inscription
samedi 28 février 2004
Statut
Membre
Dernière intervention
26 juillet 2013
36
Salut:

A mon avi, tu peux utiliser un bouton ordinaire sur lequel tu:

1. Afficher une image. (méthode : setIcon)
2. Rendre ce bouton comme un Label en le mettant à l'état sélectionné (méthode : setSelected)
3. Cacher les bords de ce bouton (méthode :setBorderPainted)
4. Supprimer le focus de ce bouton (méthode: setFocusPainted)

De cette façon tu peux utiliser votre "bouton" comme une simple image et par la suite tu peux le faire associé des écouteurs d'événements.

_______________________________________________________
A.B. : Toute chose dans la vie a une référence.
L'homme est une chose.
Alors l'homme a une référence.
Messages postés
12
Date d'inscription
samedi 2 août 2003
Statut
Membre
Dernière intervention
28 février 2007

Merci c'est parfait comme ca !!!
Les deux manieres marchent, mais la premiere demande moins de travail

Merci encore a vous deux !!