Problème affichage image sur JButton
Bonjour à tous!
Je travaille actuellement sur un projet java... Tout se passe à peu près correctement, quand surgit l'habituel problème auquel on ne s'attend pas du tout.
Voici un screen de mon programme lorsque tout se passe bien :
http://nsa29.casimages.com/img/2012/...5652295976.png
Les boutons, sur le tour de mon écran, sont insérés via grâce à cette classe :
Code:
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 36 37 38 39 40 41 42 43 44 45 46 47
| package vue;
import java.awt.Cursor;
import java.awt.Graphics;
import java.awt.Image;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JButton;
/**
*
* <b> Bouton est la classe de gestion de l'affichage des boutons </b>
*
*/
public class Bouton extends JButton {
/**
* Image : Attribut correspondant à l'image affichée sur le bouton
*/
private Image image;
/**
* Constructeur de la classe Bouton qui hérite de la classe JButton
* Place un bouton, contenant l'image de chemin "url", aux coordonnées (x,y)
* @param String : Le chemin vers l'image du bouton
* @param int : La position en abscisses du bouton
* @param y : la position en ordonnées du bouton
*/
public Bouton(String url, int x, int y){
try {
this.image = ImageIO.read(this.getClass().getResourceAsStream(url));
} catch (IOException e) {
this.image = null;
System.out.println("Fichier invalide");
}
// this.setPreferredSize(new Dimension(70,70));
this.setBounds(x, y, image.getWidth(this), image.getHeight(this));
this.setVisible(true);
this.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
}
public void paintComponent(Graphics g){
g.drawImage(this.image,0,0,this);
}
} |
Il me suffit donc dans la vue de mon écran de faire par exemple :
Code:
1 2
| Bouton h1= new Bouton("/images/bouton.png", 35, 525);
this.add(h1); |
Je souhaite maintenant déssiner un arc de cercle longeant le bord de mon cadran, j'utilise pour ça la méthode Graphics.drawArc().
J'obtiens ceci :
http://nsa29.casimages.com/img/2012/...5701584011.png
Je ne comprends pas pourquoi mes boutons changent d'apparence...
Si quelqu'un à une idée, même toute petite, de où cela peut venir, je suis preneur!
Merci en tout cas!