bspainkf36
Erfahrenes Mitglied
Hey,
ist etwas schwierig mein Problem in der Betreffzeile zu schildern
Ich habe eine Klasse View(erbt von JPanel) von der ich die Klassen A, B und C ableite. Ich habe mir in der Klasse A eine BufferdeImage-Objekt erzeugt und male in diesem herum.
Jetzt zu meinem Problem. Wenn ich in dem BufferedImage Objekt zeichne, wird das Bild auch auf die Klassen B und C übertragen, obwohl sie in keiner direkten Assoziation mit dem BufferedImage Objekt von A stehen. Ich zeichne zwar auch in B und C, dies geschieht indirekt über A (BufferedImage wird in einem Array abgelegt und anschließend in B und C dargestellt).
Das Problem tritt nur direkt beim Mahlen auf. Wenn ich beispielsweise Eclipse in den Vordergrund hole, so dass mein Fenster nicht mehr zu sehen ist, und anschließend den JFrame wieder in den sichtbaren Bereich ziehe, wird alles richtig dargestellt. Anscheinend ruft das Betriebssystem separat jede einzelne paint-Methode der JPanels auf und alles wird richtig angezeigt.
Ich habe auch die serialVersionsUID in der View sowie A,B und C Klasse implementiert, doch leider wird beim Zeichnen weiterhin in jedem der drei Panels das gleich Bild dargestellt während des Zeichnens angezeigt.
Danke für eure Hilfe
Greetz Kon
ist etwas schwierig mein Problem in der Betreffzeile zu schildern
Ich habe eine Klasse View(erbt von JPanel) von der ich die Klassen A, B und C ableite. Ich habe mir in der Klasse A eine BufferdeImage-Objekt erzeugt und male in diesem herum.
Jetzt zu meinem Problem. Wenn ich in dem BufferedImage Objekt zeichne, wird das Bild auch auf die Klassen B und C übertragen, obwohl sie in keiner direkten Assoziation mit dem BufferedImage Objekt von A stehen. Ich zeichne zwar auch in B und C, dies geschieht indirekt über A (BufferedImage wird in einem Array abgelegt und anschließend in B und C dargestellt).
Das Problem tritt nur direkt beim Mahlen auf. Wenn ich beispielsweise Eclipse in den Vordergrund hole, so dass mein Fenster nicht mehr zu sehen ist, und anschließend den JFrame wieder in den sichtbaren Bereich ziehe, wird alles richtig dargestellt. Anscheinend ruft das Betriebssystem separat jede einzelne paint-Methode der JPanels auf und alles wird richtig angezeigt.
Code:
private static final long serialVersionUID = 1027176525973253122L;
Ich habe auch die serialVersionsUID in der View sowie A,B und C Klasse implementiert, doch leider wird beim Zeichnen weiterhin in jedem der drei Panels das gleich Bild dargestellt während des Zeichnens angezeigt.
Danke für eure Hilfe
Greetz Kon