赞
踩
QStackedWidget实现窗口滑动动画
本文基于对QstackedWidget和 QPropertyAnimation有认知的基础.
效果
如果直接使用QstackedWidget,切换没有动画过度,直接完成切换
实现过度动画过程:
QPixmap pix; widget->render(pix);//widget是想要绘制成图片的窗口 |
2.通过QPropertyAnimation (属性动画)进行绘制图片
QPropertyAnimation animation; animation.setsetStartValue(0); animation.setEndValue(pix->width());//动画结束值是图片的宽度 animation.setTargetObject(this); connect(animation, &QPropertyAnimation::valueChanged, this, &AnimationStackedW::displayAnimationToR); connect(animation, &QPropertyAnimation::finished, this, &AnimationStackedW::showNextToR);// AnimationStackedW是自定义类名 animation->start(); |
3.通过绘图事件把把上述一组图片绘制到StackedWidget
代码写的很简陋,参考意义不大,也会上传,不需要积分,免费的
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。