Seite 1 von 1

PNG Animation

Verfasst: 17. Juni 2010 08:34
von stardust5383
Hallo zusammen,

ich würde gerne für ein Projekt eine Liveanimation einer Anlage realisieren. Dazu habe ich mir folgendes überlegt:

Es gibt Bilder der Anlage (PNG mit Transparenz) und der beweglichen Teile (auch mit transparenten PNGs). Das bewegliche Teil soll nun bei Aktualisierung des Zähler werts automatisch unter dem Anlagenbild herwandern.

Bisher habe ich folgenden Ansatz: Ich schreibe mir ein QWidget mit zwei QLabels die übereinander liegen. Das QWidget erhält einen Slot, der bei Änderung des Wertes aus dem Drehgeber aufgerufen wird und das bewegliche Teil mit einer neuen Position besetzt. Anschließend rufe ich redraw() auf.

Ist das der richtige Ansatz? Sollte ich diese Animation in einem seperaten Thread laufen lassen? Über ein paar Tips würde ich mich freuen.

Verfasst: 17. Juni 2010 08:42
von franzf
Du kannst die Animation nicht in nem separaten Thread laufen lassen. Zeichnen geht nur im main-thread.
Schau dir vllt. erst mal QGraphicsView an. Das sollte dein Problem am einfachsten lösen. QGraphicsItemAnimation kannst du dann für die Animation verwenden.

Verfasst: 17. Juni 2010 08:45
von stardust5383
ok, das hört sich gut an. Hab mal schnell drüber geschaut. Die Repaint Methode über einen slot bei jeder Aktualisierung des Wertes aufzurufen ist aber ok?