Ciao a tutti
Quello che devo fare è un JPanel con un immagine di sfondo e sopra delle scritte fatte con JLabel o JTextField.
Bene, ho caricato la mia immagina con questo:
public class ImagePanel extends JPanel {
private Image img;
public ImagePanel(Image img) {
this.img = img;
Dimension size = new Dimension(img.getWidth(null), img.getHeight(null));
setPreferredSize(size);
setMinimumSize(size);
setMaximumSize(size);
setSize(size);
setLayout(null);
}
protected void paintComponent(Graphics g) {
g.drawImage(img, 0, 0, null);
}
E fino a qui tutto bene, l'immagine si vede.
Poi ho aggiunto un altro pannello (JPanel) sopra quello dell'immagine che a sua volta contiene i componenti JLabel e JTextField delle scritte.
In questo pannello ho settato setOpaque(false).
Succede questo, solo i JTextField si vedono, ma solo se a loro volta hanno setOpaque(true), i JLabel non si vedono, opachi o non opachi che siano.
Se tolgo il pannello dell'immagine di sfondo va tutto perfettamente.
Che succede ?

Rispondi quotando