JPanel Hintergrundbild

maltor

Mitglied
JPanel Hintergrundbild


Ich habe mehrere JPanel's (die wiederum in verschieden JSplitPane's untergebracht sind ) . In einen der JPanel möchte ich gerne ein Hintergrundbild anzeigen.
Dabei sollen die anderen Komponenten wie JButton ... über das Hintergrundbild liegen.


Ich habe leider keine Idee wie ich dieses Umsetzen kann, habe schon bei Google gesucht, aber leider nicht das richtige gefunden.


Nun hoffe ich das mir hier jemand weiter helfen kann.


Mit freundlichen Grüßen
Malte
 
Hallo Malte,
Malte hier ;)
vielleicht hilft dir dies hier weiter?
Code:
import java.awt.*;
import javax.swing.*;

public class PanelMitBild {	
	public PanelMitBild () {
		JFrame f = new JFrame();
		f.setLayout(new FlowLayout());
		
		MyPanel panel = new MyPanel(Toolkit.getDefaultToolkit().getImage("stars.png"));
			panel.add(new JButton("Huhu"));
		f.setContentPane(panel);
		
		f.setSize(400, 300);
		f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		f.setVisible(true);
	}
	
	public static void main (String [] args) {
		new PanelMitBild();
	}
	
	class MyPanel extends JPanel {

		private Image image;

		MyPanel(Image image) {
			this.image = image;
			repaint();
		}
		
		public void paintComponent(Graphics g) {
			g.drawImage(image, 0, 0, null);
		}
	}
}

MFG, Malte
 
Hallo Malte :) ,
besten Dank, das funktioniert super, genauso wollte ich das auch haben.


Eine Frage hätte ich noch.
Wie kann ich das Bild des JPanel wechseln wenn ich z.B auf einen Button klickt?
 
naja, du gibst der Klasse MyPanel noch eine Methode meinetwegen setImg(Image image), die das gleiche macht, wie der konstruktor.
 
Ich habs nun, habe mehrere Panel erstellt, weil ich auf den jeweiligen Panel unterschiedliche Buttons platzieren möchte.

Besten Dank!
 
Zurück