Salut,
Je me heurte depuis deux jours a un probleme qui semble tout bete : je fais afficher une image dans un composant fait maison heritant de JPanel le tout placé dans une JFrame. Jusque là tout va bien, ça marche. Mon application est amené a modifier le fichier jpg contenant l'image affichée puis a rappeler une instance de ma JFrame qui doit faire afficher la nouvelle image. Et c'est la que ça coince. Dès le deuxieme appel l'image affichée est l'ancienne alors que le fichier n'est plus le même (j'ai essayé en supprimant purement et simplement le fichier mais l'image affichée est toujours la même :/).
Voici le code de mon composant faisant afficher l'image :
Je precise que ceux sont bien deux instances distinctes de JFrame qui crée ce composant pour le mettre sur leur contentPane.
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
19
20
21
22 public class PanelImage extends JPanel { String path; Image img; public PanelImage(String path) { this.path = path; img = java.awt.Toolkit.getDefaultToolkit().getImage(path); MediaTracker media = new MediaTracker(this); media.addImage(img,0); try { media.waitForAll(); } catch (Exception e) { e.printStackTrace(); } } public void paintComponent(Graphics g) { g.drawImage(img,0,0,img.getWidth(null),img.getHeight(null),null); } }
Partager