Bonjour,

J'utilise une classe très proche de celle présentée dans les tutoriaux de SUN ici:
Exemple ScrollPane SUN-tutoriaux

L'image dessinée est modifiée par une autre classe, et je voudrais que lorsque ma frame redevient visible, l'image se mette à jour...

Voila où je crée ma ScrollablePicture:
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
23
24
25
26
27
28
29
30
31
32
33
34
35
 
public OngApercu(int co) {
		setLayout(new BoxLayout(this, BoxLayout.LINE_AXIS));
		cote = co;
		//Get the image to use.
		ImageIcon feuille = null;
 
		try{
			if(cote == RECTO){
				feuille = createImageIcon(exe.eMarque.match.getCheminFeuilleR());
 
			}else{
				feuille = createImageIcon(exe.eMarque.match.getCheminFeuilleV());	
			}
		}
		catch(Exception ex){
			System.out.println("erreur2 "+ex);
		}
 
		//Set up the scroll pane.
		picture = new ScrollablePicture(feuille,(int)((Toolkit.getDefaultToolkit().getScreenResolution())/(double)2.54));
		JScrollPane pictureScrollPane = new JScrollPane(picture);
		pictureScrollPane.setViewportBorder(
				BorderFactory.createLineBorder(Color.black));
 
		pictureScrollPane.setCorner(JScrollPane.UPPER_LEFT_CORNER,
				new Corner());
		pictureScrollPane.setCorner(JScrollPane.LOWER_LEFT_CORNER,
				new Corner());
		pictureScrollPane.setCorner(JScrollPane.UPPER_RIGHT_CORNER,
				new Corner());
 
		add(pictureScrollPane);
		setBorder(BorderFactory.createEmptyBorder(10,10,10,10));
	}
et voilà la fonction qui est appelée quand ma frame redevient visible:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
public void setIcon(String path){
 
	picture.removeAll();
	picture.setIcon(new ImageIcon(path));
	picture.repaint();
	}
Et ça ne fonctionne pas!!!