Affichage image en arrière plan d'un JPanel

Résolu
yannOpenGL
Messages postés
141
Date d'inscription
samedi 4 février 2012
Statut
Membre
Dernière intervention
3 avril 2013
- 5 juin 2012 à 11:08
yannOpenGL
Messages postés
141
Date d'inscription
samedi 4 février 2012
Statut
Membre
Dernière intervention
3 avril 2013
- 5 juin 2012 à 11:38
Bonjour,

j'aimerai afficher une image de fond dans un JPanel avec un layout null.

Lorsque je l'affiche, elle passe par dessus tout le reste et n'est pas en fond.
Voici le code que j'utilise pour l'afficher :
private JLabel imageFond = new JLabel(new ImageIcon( "image.JPG"));
 
imageFond.setBounds(0, 0, 500, 300);
panelPrincipal.add(imageFond);


Pourtant, je la mets directement après la création du JPanel et avant d'appeler les autres composants.

Savez-vous d'où peut venir le problème ?

Merci.
Bonne journée.

3 réponses

cs_Julien39
Messages postés
6414
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
29 juillet 2020
366
5 juin 2012 à 11:14
Salut,

C'est normal, pour t'en sortir, tu peux regarder cette source : http://www.javafr.com/codes/AFFICHER-IMAGE-ARRIERE-PLAN-DANS-JPANEL_54144.aspx
3
yannOpenGL
Messages postés
141
Date d'inscription
samedi 4 février 2012
Statut
Membre
Dernière intervention
3 avril 2013

5 juin 2012 à 11:31
Merci pour la réponse.

J'ai l'impression que la partie du code dont je devrai me servir est :
public void paintComponent(Graphics g){
if(image!=null){
Graphics2D g2d = (Graphics2D)g;
g2d.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR);
g2d.drawImage(image, 0, 0, getWidth(), getHeight(), null);
}
} 


Du coup, j'imagine qu'il faut quelque part appeler la méthode paintComponent mais je ne vois pas comment et je ne comprend pas ce qu'est Graphics g ni pourquoi utiliser Graphics2D .

Ceci me parait compliqué juste pour afficher une image en fond non ?
0
yannOpenGL
Messages postés
141
Date d'inscription
samedi 4 février 2012
Statut
Membre
Dernière intervention
3 avril 2013

5 juin 2012 à 11:38
C'est bon, j'ai compris comment m'en servir.
Merci beaucoup.
0