Block * block1 = new Block(40,20,20); // params: x pos, y pos, width
// using setPos(x,y) in constructor
// declaration of 2 qpropertyanimations for block1
QPropertyAnimation * anim4 = new QPropertyAnimation(block1, "pos");
anim4->setDuration(2000);
anim4
->setStartValue
(QPointF(40,
20));
anim4
->setEndValue
(QPointF(60,
20));
QPropertyAnimation * anim5 = new QPropertyAnimation(block1, "pos");
anim5->setDuration(2000);
anim5
->setStartValue
(QPointF(60,
20));
anim5
->setEndValue
(QPointF(80,
20));
QSequentialAnimationGroup * group = new QSequentialAnimationGroup;
printf("x: %f\n", block1->x()); // says 40
group->addAnimation(anim4);
block1->setX(block1->x()+20);
printf("x: %f\n", block1->x()); // says 60
group->addAnimation(anim5);
block1->setX(block1->x()+20);
printf("x: %f\n", block1->x()); // says 80
group->start();
Block * block1 = new Block(40,20,20); // params: x pos, y pos, width
// using setPos(x,y) in constructor
// declaration of 2 qpropertyanimations for block1
QPropertyAnimation * anim4 = new QPropertyAnimation(block1, "pos");
anim4->setDuration(2000);
anim4->setStartValue(QPointF(40,20));
anim4->setEndValue(QPointF(60,20));
QPropertyAnimation * anim5 = new QPropertyAnimation(block1, "pos");
anim5->setDuration(2000);
anim5->setStartValue(QPointF(60,20));
anim5->setEndValue(QPointF(80,20));
QSequentialAnimationGroup * group = new QSequentialAnimationGroup;
printf("x: %f\n", block1->x()); // says 40
group->addAnimation(anim4);
block1->setX(block1->x()+20);
printf("x: %f\n", block1->x()); // says 60
group->addAnimation(anim5);
block1->setX(block1->x()+20);
printf("x: %f\n", block1->x()); // says 80
group->start();
To copy to clipboard, switch view to plain text mode
Bookmarks