connect连接函数ambiguous错误怎么办?

Tom199818 2015-11-09 09:18:25
connect(timeline, SIGNAL(finished()), this , SLOT(endAnimation()));


error: reference to 'connect' is ambiguous

如果我把这一行注释掉,则会提示
Error: Undefined interface
Makefile:714: recipe for target 'moc_gamescene.cpp' failed

显示错误行为
Q_INTERFACES(QGraphicsScene);


头文件大致内容:
#ifndef GAMESCENE_H
#define GAMESCENE_H
#include <QGraphicsScene>
#include <QSize>
#include <QGraphicsView>
#include <QString>
#include <QGraphicsRectItem>
#include <QGraphicsTextItem>
#include <QList>
#include <QPropertyAnimation>
#include <QGraphicsItemAnimation>
#include <QTime>
#include <QTimeLine>
#include <QApplication>
#include <QObject>
class GameScene :public QObject, public QGraphicsScene
{
Q_OBJECT
Q_INTERFACES(QGraphicsScene)
public:
void *****()
private:
*****

private slots:
void endAnimation();
};

#endif // GAMESCENE_H

...全文
1145 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
GreenArrowMan 2015-11-10
  • 打赏
  • 举报
回复
继承了QObject两次,不知道调用哪一个。。就像一楼说的。 要想确定使用QGraphicsScene::connect或者QObject::connect这样就好了
beyondma 2015-11-09
  • 打赏
  • 举报
回复
就是有歧义了,加上类名就好了
冷静忍耐 2015-11-09
  • 打赏
  • 举报
回复
QGraphicsScene本来就是继承QObjet的,只要继承QGraphicsScene,不用再继承QObjet了吧 Q_INTERFACES这个??你是要做插件??

16,818

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧