Hintergrundbild verdeckt JPanel

jensebluemchen

Grünschnabel
Hallo zusammen,

hoffe es kann mir hier jemand einen Tipp geben :)

Ich habe eine Klass, die von JFrame abgeleitet wurde. In diesem JFrame setze ich über die paint()-Methode ein Hintergrundbild.
Wenn ich nun versuche irgendeine Swing-Komponente z.B. ein JPanel auf dem Hintergrundbild anzuzeigen, dann kann ich diese Komponente leider nicht sehen - wahrscheinlich liegt sie hinter dem Bild.

Weiss jemand, an was das liegen könnte und wie ich den Effekt vermeide?

Grüssle Jens
 
Ich kann dir leider nicht sagen wie man das vermeiden kann, aber ich kann dir sagen wie ich das immer mache :)

ImageIcon bild=new ImageIcon("DasBild");
JLabel lab=new JLabel(bild);


und lege dann mit setBounds die position und größe fest :)
 
Hallo versuch mal das Bild nicht in der paint()-Methode des Frames zu Zeichnen sondern in der paintComponent()-Methode. Dann sollte es gehen, aber nicht vergessen über super.paintComponent(g) die Methode der SuperKlasse aufzurufen.
 
Ja also wenn du die methode überschreibst solltest du sie noch in der SuperKlasse aufrufen.
Da es Sonst sein kann das das Element nicht richtig dargestellt wir.

Code:
public void paintComponent(Graphics g){
 super.paintComponent(g);
 g.drawImage(.......
}
 
Zurück