3A是个坏同志 2013-12-13 09:22 采纳率: 0%
浏览 4356

Qt中QPropertyAnimation如何使QGraphicsItem动起来(Qt动画的问题)?

我又看了一下文档,说了这么一段奇怪的话:

当我们想让QGraphicsItems进行动画,并且使用QPropertyAnimation类。但是,QGraphicsItem没有从 QObject继承。一个好的解决方案是子类话你想要动画的图形项。而且本类也继承自QObject。QPropertyAnimation能被使用在 QGraphicsItems中。以下示例显示了怎么去做。另一个可能是去继承QGraphicsWidget,QGraphicsWidget是一个 QObject。

class Pixmap : public QObject, public QGraphicsPixmapItem
{
Q_OBJECT
Q_PROERTY(QPointF pos READ pos WRITE setPos)
……

正如前所述,我们要定义的属性是要进行动画的属性。

这个子类究竟要怎么定义怎么用呢?尝试了一下不对,百思不得其解……参考文档,我是这么改的:

QGraphicsItem *background=scene->addPixmap(QPixmap(XXXXX));
QPropertyAnimation *animation = new QPropertyAnimation(background, "geometry");

然后报错E:\QT\QT5.1A\Tools\QtCreator\bin\my\widget.cpp:47: 错误:no matching function for call to 'QPropertyAnimation::QPropertyAnimation(QGraphicsItem*&, const char [9])'

应该就是不对,那么应该怎么写呢?球大神解答!

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-09-20 23:48
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

悬赏问题

  • ¥15 用visual studi code完成html页面
  • ¥15 聚类分析或者python进行数据分析
  • ¥15 逻辑谓词和消解原理的运用
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?