Seite 1 von 1

[gelöst] QPropertyAnimation

Verfasst: 6. Oktober 2011 15:18
von reinki0013
Hallo zusammen,

ich arbeite gerade mit einer QPropertyAnimation und habe mir mal QEasingCurve angesehen.
Meine Frage wäre jetzt, kann ich irgendwo festlegen, wo diese QEasingCurve beginnt ?
Standardmäßig beginnt diese ja anscheinend immer links oben, ich möchte aber nicht das es links oben beginnt, sondern von der Mitte heraus.
Sprich ich will im konkreten Fall ein QLabel vom Hintergrund heraus einblenden, mit QEasingCurve. Leider ist es momentan so, das es immer von links oben beginnt.
Kann ich das wo festlegen?

Wäre toll wenn mir jemand einen Tipp gibt bzw. weiterhilft.

besten dank,

lg reinki

Re: QPropertyAnimation

Verfasst: 6. Oktober 2011 16:10
von upsala
Eine QEasingCurve beginnt immer bei 0 und hört bei 1 auf, da gibt es kein links oben.

Aber was hast du deine QPropertyAnimation für ein Start-Value übergeben?

Re: QPropertyAnimation

Verfasst: 7. Oktober 2011 07:38
von reinki0013
upsala hat geschrieben:Eine QEasingCurve beginnt immer bei 0 und hört bei 1 auf, da gibt es kein links oben.

Aber was hast du deine QPropertyAnimation für ein Start-Value übergeben?
Ich habe es wie folgt gemacht:

Code: Alles auswählen

animation = new QPropertyAnimation(label, "size");
animation->setEasingCurve(QEasingCurve::OutBance);
animation->setDuration(2000);
animation->setStartValue(QSize(0.0));
animation->setEndValue(QSize(170, 100));
animation->start();
Ziel sollte sein, das mein QLabel langsam (sprich innerhalb von 2 sek) von ganz klein bis zur gewünschten QSize größer wird.
Das funktioniert allerdings nicht!

lg

Re: QPropertyAnimation

Verfasst: 7. Oktober 2011 12:22
von franzf
size ist nun mal nur die Größe, den Ursprung beeinflusst das nicht. Jedes Widget hat seinen Koordinatenursprung oben links, den kannst du nicht umbiegen.
Mit QPropertyAnmiation wirst du daher nicht weit kommen (jedenfalls nicht bei dieser Animation). Du kannst dir das Label in ein Pixmap rendern und daraus dann einzelne rects ausschneiden und die mit passender FPS über das eigentliche Widget malen.

Re: QPropertyAnimation

Verfasst: 12. Oktober 2011 14:35
von ceumern
Nun ja, du kannst auch die "pos" vom widget animieren. Kombiniert mit "size" kannst du den gewünschten Effekt erzielen.

Re: QPropertyAnimation

Verfasst: 19. Oktober 2011 10:36
von reinki0013
ceumern hat geschrieben:Nun ja, du kannst auch die "pos" vom widget animieren. Kombiniert mit "size" kannst du den gewünschten Effekt erzielen.
und wie kann ich das kombinieren ?

Re: QPropertyAnimation

Verfasst: 19. Oktober 2011 10:51
von Christian81
reinki0013 hat geschrieben: und wie kann ich das kombinieren ?
Indem man einfach mal etwas liest: http://doc.trolltech.com/4.7/animation- ... s-together

Re: QPropertyAnimation

Verfasst: 19. Oktober 2011 11:52
von reinki0013
Christian81 hat geschrieben:
reinki0013 hat geschrieben: und wie kann ich das kombinieren ?
Indem man einfach mal etwas liest: http://doc.trolltech.com/4.7/animation- ... s-together
sorry, war wohl wieder zu voreilig...
besten dank Christian81 - funktioniert perfekt...

lg