Guten Tag
ich beschäftige mich nun eigentlich seit fast 3 Jahre mehr oder weniger intensiv mit Java. Nach einer monatelangen Pause fing ich vor ein paar Tagen wieder an etwas zu programmieren. Und dabei treffe ich auf ein Problem, bei dem mir weder Google noch "Java ist auch nur eine Insel" geholfen hat. Ich wette, es ist irgendwas total banales und ich habe einfach nur eine winzige Kleinigkeit übersehen ... Und deswegen will ich hier nach Hilfe fragen.
Vereinfacht habe ich ein Panel (ich nen es mal Panel1), das sich in einem Frame befindet. Panel1 hat ein BufferedImage als Attribut (Protected). Im Constructor von Panel1 wird dann ein Bild in dieses Attribut geladen, welches dann später in das Panel gezeichnet wird (also mit g.drawImage...).
Jetzt habe ich noch ein zweites Panel (Panel2), welches von Panel 1 erbt (also ... Panel2 extends Panel1). In Panel2 wird allerdings ein anderes Bild in das Protected BufferedImage geladen als in Panel1.
Erreichen will ich nun, dass wenn ich in das Panel reinklicke, soll Panel1 sozusagen zu Panel2 werden. Dazu habe ich mit einem Mouselistener und einer Steuerung eine Methode im Frame aufgerufen (das Frame hat jeweils ein Objekt von Panel1 und Panel2). Dort steht eigentlich nur Panel1 = Panel2 drin. Und danach wird neu gezeichnet.
Zumindest soll eigentlich neu gezeichnet werden. Panel1 nimmt sämtliche Attribute von Panel2 an (hab ich mit System.out.Println getestet), sprich vor Panel1 = Panel2 ist das BufferedImage ein anderes Bild als nach Panel1 = Panel2. Allerdings wird das neue Bild einfach nicht gezeichnet. Ich habs mir allen möglichen Variaten ausprobiert, ich kriege es aber einfach nicht auf die Reihe.
Ich hoffe mal, das war jetzt so einigermaßen verständlich. Auch ohne Quelltext. Falls der allerdings benötigt wird, kann ich ihn natürlich reinstellen.
Schonmal danke für die Hilfe.
MfG
SoSchautsAus
ich beschäftige mich nun eigentlich seit fast 3 Jahre mehr oder weniger intensiv mit Java. Nach einer monatelangen Pause fing ich vor ein paar Tagen wieder an etwas zu programmieren. Und dabei treffe ich auf ein Problem, bei dem mir weder Google noch "Java ist auch nur eine Insel" geholfen hat. Ich wette, es ist irgendwas total banales und ich habe einfach nur eine winzige Kleinigkeit übersehen ... Und deswegen will ich hier nach Hilfe fragen.
Vereinfacht habe ich ein Panel (ich nen es mal Panel1), das sich in einem Frame befindet. Panel1 hat ein BufferedImage als Attribut (Protected). Im Constructor von Panel1 wird dann ein Bild in dieses Attribut geladen, welches dann später in das Panel gezeichnet wird (also mit g.drawImage...).
Jetzt habe ich noch ein zweites Panel (Panel2), welches von Panel 1 erbt (also ... Panel2 extends Panel1). In Panel2 wird allerdings ein anderes Bild in das Protected BufferedImage geladen als in Panel1.
Erreichen will ich nun, dass wenn ich in das Panel reinklicke, soll Panel1 sozusagen zu Panel2 werden. Dazu habe ich mit einem Mouselistener und einer Steuerung eine Methode im Frame aufgerufen (das Frame hat jeweils ein Objekt von Panel1 und Panel2). Dort steht eigentlich nur Panel1 = Panel2 drin. Und danach wird neu gezeichnet.
Zumindest soll eigentlich neu gezeichnet werden. Panel1 nimmt sämtliche Attribute von Panel2 an (hab ich mit System.out.Println getestet), sprich vor Panel1 = Panel2 ist das BufferedImage ein anderes Bild als nach Panel1 = Panel2. Allerdings wird das neue Bild einfach nicht gezeichnet. Ich habs mir allen möglichen Variaten ausprobiert, ich kriege es aber einfach nicht auf die Reihe.
Ich hoffe mal, das war jetzt so einigermaßen verständlich. Auch ohne Quelltext. Falls der allerdings benötigt wird, kann ich ihn natürlich reinstellen.
Schonmal danke für die Hilfe.
MfG
SoSchautsAus