Плавная анимация на QStackedWidget - PullRequest
2 голосов
/ 07 февраля 2011

У меня есть пять Qwidget (каждый QWidget имеет разные элементы управления). я положил все QWidget в один родительский QStackedWidget. для изменения отображения Qwidget я использую функцию setCurrentIndex (int).

Нет проблем с отображением. но мне нужно поставить анимацию при смене страницы.

Я пытался ничего не работает. поэтому я удалил QStackedWidget и поместил QWidget напрямую, и я попытался с QPropertyAnimation.

Эта QPropertyAnimation работает, но это не плавная анимация. Вот мой код для QPropertyAnimation.

QRect pGeo(8,152,width()-16,height()-160);
profilePage->show(); //first QWidget 
QPropertyAnimation *anim1= new QPropertyAnimation(profilePage, "geometry");
anim1->setStartValue(QRect(200,pGeo.y(),pGeo.width(),pGeo.height()));
anim1->setEndValue(pGeo);
anim1->setEasingCurve(QEasingCurve::InOutSine);
anim1->setDuration(500);
anim1->start();

как сделать плавную анимацию, используя QWidget или QStackedWidget. Пожалуйста, дайте несколько советов для реализации плавной анимации.

1 Ответ

0 голосов
/ 03 мая 2011

Попробуйте разместить на QGraphicsWidget. это может сработать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...