Afficher une image dans un canvas
Bonjour,
Je souhaite afficher une image dans un JPanel.
Pour cela, j'ajoute au JPanel un canvas.
Le problème est que cela ne m'affiche rien.
Quelqu'un peut-il m'aider?
Merci
Laurent
Mon code:
Ma classe Main:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Main {
public static void main (String[] args){
JFrame cadre = new JFrame();
JPanel panel = new JPanel();
panel.add(new Dessin("2.jpg"));
cadre.add(panel);
cadre.setVisible(true);
cadre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
cadre.setSize(1300, 700);
}
} |
Ma classe dessin qui hérite de Canvas:
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
|
import java.awt.Canvas;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.Toolkit;
public class Dessin extends Canvas {
private static final long serialVersionUID = 1L;
/*Attributs*/
Image image;
/* Constructeur*/
public Dessin(String chemin){
/* Accès au toolkit */
Toolkit toolkit = Toolkit.getDefaultToolkit();
/* lecture de l'image */
image = toolkit.getImage(chemin);
}
/* Méthodes */
/**
* Dessiner image
*/
public void paint(Graphics g){
Graphics2D g2d = (Graphics2D) g;
g2d.drawImage(image,image.getWid(this),image.getHeight (this),this);
}
} |