Animation auf einem JPanel

chrizke

Mitglied
Hi,

wie gehe ich am besten vor, wenn ich auf einem JPanel mehrere verschiedene Objekte unterschiedlich bewegen (animieren) möchte?


Ich brauch erstmal keinen Code, sondern nur ne todo-list, was dafür alles zu tun ist.
 
Hallo chrizke,

herzlich willkommen im Java Forum.

Um ein zu animierendes Objekt zu zeichnen, gibt es grob gesagt zwei Möglichkeiten:

* Wir zeichnen das Objekt auf eine JComponent, die wir zur Basiskomponente hinzufügen.
* Wir zeichnen das Objekt direkt auf die Basiskomponente.

Um das Objekt zu verschieben, benutzen wir im ersten Fall die Methode "Component#setLocation" und im anderen Fall verändern wir die Koordinaten bevor wir "repaint" aufrufen. Dieser Animationsvorgang muss in einem eigenen Thread geschehen. Eine einfache Möglichkeit, diesen Thread zu verwirklichen, besteht darin, einen "javax.swing.Timer" zu benutzen. Wenn du mehrere verschiedene Objekte unterschiedlich bewegen möchtest, kannst du einfach mehrere Timer erzeugen und starten. Siehe auch Malen in Swing Teil 1: der grundlegende Mechanismus - Byte-Welt Wiki

Gruß,
André
 

Zurück
Oben