Ich habe ein Button, dieser soll sich nur innerhalb der y-Koordinaten bewegen (37-545). Das bedeutet er darf sich nur hoch oder runter innerhalb dieses Intervalls (37-545) bewegen.
Dabei sollte sich dieser erst bewegen, wenn eine Koordinate ausgewählt wurde. Falls der Button sich nach unten bewegt, soll dieser bei jeder weiteren gewählten Koordinate kurz anhalten und weiter zum gewünschten Ziel fahren. (Solange sich die Koordinate auf dem Weg des ursprünglichen Ziels befindet)
Das Problem: Ich schaffe es nicht die Animation an einem Zwischenziel anzuhalten (z.B. für 5 sek.) und danach zum Ursprungsziel weiter fahren zu lassen.
Hier ein Schnippsel, womit ich animiere:
Code: Alles auswählen
void meineKlasse::meinSlot()
{
// die Animation soll starten, wenn eines der fünf Button gedrückt wurde oder wäre eine while-schleife besser als eine if-Abfrage?
if(gedrueckt1 == true||gedrueckt2 == true||gedrueckt3 == true||gedrueckt4 == true||gedrueckt5 == true)
{
QPropertyAnimation*animation= new QPropertyAnimation(Ui->Button, "geometry");
//das ist nur die Animation, die ich nutze
animation->setDuration(Fahrtdauer);
QRect endposition(x_Position,y_Position,X_GROESSE,Y_GROESSE);
animation->setEndValue(endposition);
animation->start();
}Gibt es denn eine geeignete Zeitschleife, die z.B. 5 sek. läuft und dazu die obige Animation ausführt?
P.S. Ich arbeite mit Qt 5.0.1 und natürlich der dazugehörigen Dokumentation.