Frage

I try to draw a .PNG Image using graphic2D.drawImage() method. And I make it right, but I've one JPanel on my Frame, and when I draw my image, it appears in background. I want it to appear on the foreground, and obviously in front of my JPanel.

War es hilfreich?

Lösung

Use JLayer. (http://docs.oracle.com/javase/tutorial/uiswing/misc/jlayer.html)

Override the paint method on the LayerUI set to the JLayer and draw your .PNG image there. Add your JPanel to the JLayer.

Andere Tipps

You should add one more JPanel and draw image in its paintComponent method like that.

    @Override
    protected void paintComponent(Graphics g) {
        super.paintComponent(g);
        if (yourImage != null)
            g.drawImage(yourImage, 0, 0, this);
    }

and than you can hide other JPanel and show this JPanel with setVisible() function.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top