QSlider mit QPropertyAnimation connecten?
Verfasst: 13. Juni 2010 14:29
Hallo liebe Foren-Community,
mein Animationsprojekt schreitet voran und inzwischen laufen alle Animationen so, wie ich es gerne hätte. Es wäre allerdings schön, wenn ich den zeitlichen Fortschritt meiner Animation mit einem QSlider als Zeitleiste visualisieren könnte. Außerdem wäre es toll, wenn man mit Bewegen des Sliders die Animation vor- und zurückspulen könnte.
Die Animationen laufen bereits und können bisher über einen Start-, Stop- und Pausebutton gesteuert werden. Ein Slider ist auch schon vorhanden, jedoch bisher leider ohne Funktion, da mir einfach nicht klar ist, wie ich das ganze connecten soll. Der Slider nimmt nur Zahlen von 0 bis 100 (int) an, während der Animationsfortschritt meines Wissens nach Werte zwischen 0 und 1 annimmt.
Hier ein verknapptes Beispiel:
Nun stellt sich mir die Frage nach den Connections:
Bin ich überhaupt auf dem richtigen Weg? Für Hilfe, Tipps und Anregungen bin ich dankbar.
Einen schönen Sonntag!
Viele Grüße
Toni
mein Animationsprojekt schreitet voran und inzwischen laufen alle Animationen so, wie ich es gerne hätte. Es wäre allerdings schön, wenn ich den zeitlichen Fortschritt meiner Animation mit einem QSlider als Zeitleiste visualisieren könnte. Außerdem wäre es toll, wenn man mit Bewegen des Sliders die Animation vor- und zurückspulen könnte.
Die Animationen laufen bereits und können bisher über einen Start-, Stop- und Pausebutton gesteuert werden. Ein Slider ist auch schon vorhanden, jedoch bisher leider ohne Funktion, da mir einfach nicht klar ist, wie ich das ganze connecten soll. Der Slider nimmt nur Zahlen von 0 bis 100 (int) an, während der Animationsfortschritt meines Wissens nach Werte zwischen 0 und 1 annimmt.
Hier ein verknapptes Beispiel:
Code: Alles auswählen
QScene Scene;
Scene.addItem(Ball);
QGraphicsView View(&Scene);
QPropertyAnimation AniPosition(Ball, "pos");
AniPosition.setDuration(5000);
AniPosition.setStartValue(QPointF(0,0));
AniPosition.setEndValue(QPointF(200,200));
QSlider SlideBar = new QSlider(Qt::Horizontal, this);
Code: Alles auswählen
connect(&AniPosition, SIGNAL(?), SlideBar, SLOT(?));
connect(SlideBar, SIGNAL(?), &AniPosition, SLOT(?));
Einen schönen Sonntag!
Viele Grüße
Toni