2011-02-07 10 views
2

나는 다섯 개의 Qwidget을 가지고 있습니다 (각 QWidget은 다른 컨트롤을 가지고 있습니다). 모든 QWidget을 하나의 부모 QStackedWidget에 넣습니다. Qwidget의 표시를 변경하려면 setCurrentIndex (int) 함수를 사용하고 있습니다.QStackedWidget의 부드러운 애니메이션

표시하는 데 문제가 없습니다. 하지만 난 페이지를 변경하는 동안 애니메이션을 넣어해야합니다.

나는 아무 것도 노력하지 않았습니다. 그래서 나는 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을 사용하여 부드러운 애니메이션을 만드는 방법. 부드러운 애니메이션을 구현하기위한 제안을하십시오.

+0

어떤 플랫폼? 데스크톱? 변하기 쉬운? – Virne

+0

애니메이션 중에 CPU 사용량이 급증합니까? – Chris

답변

0

QGraphicsWidget에 배치 해보십시오. 그것은 작동 할 수도 있습니다

관련 문제