Action sur une image

sy3ns Messages postés 80 Date d'inscription lundi 20 février 2006 Statut Membre Dernière intervention 16 avril 2008 - 9 déc. 2007 à 17:52
Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 - 9 déc. 2007 à 19:41
Bonjour en faite je voudrais rattaché une action quand je clique sur une image
je sais le faire avec un bouton mais pas avec une image.

J'ai essayer cette méthode mais cela ne me convient pas car l'image est incluse dans un bouton :
ImageIcon boutoncarte =new ImageIcon("./bouton_21.gif");

setLayout(new GridBagLayout());
GridBagConstraints c=new GridBagConstraints();
c.insets=new Insets(0,0,0,0);

JButton image=new JButton(boutoncarte);
image.addActionListener(this);
c.gridx=0;
c.gridy=0;
c.gridheight=1;
c.gridwidth=4;
add(image,c);

1 réponse

Ombitious_Developper Messages postés 2333 Date d'inscription samedi 28 février 2004 Statut Membre Dernière intervention 26 juillet 2013 38
9 déc. 2007 à 19:41
Salut:

Les seules composants susceptibles de déclencher des actions héritent de la classe AbstractButton. J'ai penser à utiliser un JLabel mais malheureusement on ne peut pas lui attacher ni un ActionListener ni un MouseListener.

Une idée qui vient à l'esprit est d'utiliser un JButton mais avec quelques modifications.
1. Utiliser la méthode setBorderPainted(false) de cette classe pour ne pas dessiner les bordures du bouton
2. Utiliser la méthode setFocusPainted(false) de cette classe pour ne pas dessiner la trace du focus sur le bouton

JButton button = new JButton(new ImageIcon("image.png"));
button.setBorderPainted(false);
button.setFocusPainted(false);
button.addActionListener(...);

Bye.
0
Rejoignez-nous