bonsoir
je sais que c bête
mais est-ce que quelqu'un peut m'expliquer comment faire une image en arriére
plant d'un JPanel
merci d'avance
bonsoir
je sais que c bête
mais est-ce que quelqu'un peut m'expliquer comment faire une image en arriére
plant d'un JPanel
merci d'avance
il faudra redéfinir la méthode paintComponent de JPanel. C'est expliqué dans la faq http://java.developpez.com/faq/gui/?...E_fond_fenetre
merci
mais ça marche pas ,j'ai fait la code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 public class pan_nor extends JPanel { Toolkit toolkit = java.awt.Toolkit.getDefaultToolkit(); Image img=toolkit.getImage("graph.png"); @Override public void paintComponent(Graphics g) { g.drawImage(img,0,0,null); } }
sans résulatat
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 public class ui extends JFrame private JPanel p=new pan_nor(); public ui() { add(p,BorderLayout.NORTH); //le reste du code }
Voici une proposition de correction pour que ton code fonctionne.
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 public class panNor extends JPanel { private final Image img; public panNor() { img = java.awt.Toolkit.getDefaultToolkit().getImage("graph.png"); } @Override protected void paintComponent(Graphics g) { super.paintComponent(g); // si tu utilises le Toolkit pour accéder à l'image, // elle sera chargée seulement au premier affichage donc // il faut utiliser un image Observer pour prévenir de la fin du chargement. g.drawImage(img, 0, 0, this); } }
merci pour l'interaction
mais rien de spécial,toujours pas de résultat
Essaye çà, tu auras au moins des infos sur le problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 public panNor() throws IOException { img = ImageIO.read(new File("graph.png")); // pour le debug : System.out.println("image w: "+ img.getWidth(this)); }
Partager