当前位置: 代码迷 >> QT开发 >> QPropertyAnimation的应用
  详细解决方案

QPropertyAnimation的应用

热度:62   发布时间:2016-04-25 04:21:21.0
QPropertyAnimation的使用
我想用QPropertyAnimation实现一个图片的平滑滚动,但是运行的时候提示 QPropertyAnimation::updateState (): Changing state of an animation without target
代码如下:
QPixmap image(("./images/test.jpg"));
Pixmap* pixItem = new Pixmap(image);
singleScene->addItem(pixItem);

QPropertyAnimation *animation = new QPropertyAnimation(pixItem);
animation->setDuration(1);
animation->setStartValue(QPoint(0, 360));
animation->setEndValue(QPoint(110, 180));
animation->start();


ps:Pixmap 是一个从QObject和QGraphicsPixmapItem继承的类
------解决方案--------------------
可以参考下example里面的animation 下的例子
------解决方案--------------------
改变状态没有提供目标  貌似要预先定义好state 在这几个state之间转换。 我也刚学qt 我的理解而已
------解决方案--------------------
按照提示来说,好像是少了什么目标之类的,这方面研究少,搞不来
------解决方案--------------------
是不是你没有给你的Pixmap设置QPointF属性啊!
Q_PROPERTY(QPointF pos READ pos WRITE setPos)
------解决方案--------------------
解决了,创建QPropertyAnimation的时候会要这样写
QPropertyAnimation *animation = new QPropertyAnimation(pixItem,"pos");
------解决方案--------------------
刚学qt,学习了
------解决方案--------------------
学习了.....net
  相关解决方案