
Originariamente inviata da
linux_r
se osservi bene io utilizzo il paintComponent per modificare anche il jlabel
Ma non servirebbe più .....
Scritto (e abbozzato) al volo:
codice:
public class RiquadroFoto extends JPanel {
private Image imgFoto;
.....
public void caricaImmagine(File file) {
// ..... carica immagine e assegna a imgFoto.
repaint();
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawImage(imgFoto, 0, 0, getWidth(), getHeight(), this);
}
.....
}
Grosso modo è proprio tutto qui ....
E infine:
1) nota che paintComponent è, originalmente in JComponent, protected. Se non ci sono motivi davvero reali, è bene tenerlo protected!
2) super.paintComponent(g); .... non super.paintComponents(g);
paintComponents è per altro.