Hallo zusammen, ich möchte ein Bild in ein JPanel einfügen. Bei mir wird das Bild aber nicht angezeigt. Füge ich das Bild jedoch direkt in ein JFrame ein und nicht über ein JPanel, so klappt das ganze. Ich verstehe nicht, wo das Problem liegt. Vorschläge zu ähnlichen Problemen hier im Forum habe ich versucht umzusetzen, jedoch ohne Erfolg.
Hier vielleicht kurz, was ich mache:
Hier erstelle eine JComponent mit einem Bild.
Hier erstelle ich ein Objekt card, welches ich einem JPanel hinzufüge.
Des weiteren füge ich dann das Panel() Objekt in einen JFrame ein. Wie gesagt, ohne Panel klappt das aber mit Panel wird das Bild nicht mehr gezeichnet. Ich wäre für einen Tipp dankbar, denn ich so die dumpfe Ahnung, dass die Lösung nur allzu simpel sein wird, aber ich komm nicht drauf...
Hier vielleicht kurz, was ich mache:
Code:
import java.awt.Graphics;
import java.awt.Image;
import javax.swing.JComponent;
public class Karte extends JComponent {
private Image img1, img2;
public Karte() {
super();
img1 = getToolkit().getImage("img/img1.jpg");
}
public synchronized void paintComponent(Graphics g) {
g.drawImage(img1, 0, 0, this);
super.paintComponent(g);
}
}
Hier erstelle eine JComponent mit einem Bild.
Code:
import javax.swing.JPanel;
public class Panel extends JPanel{
Karte card;
public Panel(){
super();
card = new Karte();
this.setFocusable(false);
this.add(card);
}
}
Hier erstelle ich ein Objekt card, welches ich einem JPanel hinzufüge.
Des weiteren füge ich dann das Panel() Objekt in einen JFrame ein. Wie gesagt, ohne Panel klappt das aber mit Panel wird das Bild nicht mehr gezeichnet. Ich wäre für einen Tipp dankbar, denn ich so die dumpfe Ahnung, dass die Lösung nur allzu simpel sein wird, aber ich komm nicht drauf...