Qt--QGraphicsItem 子类中使用信号与槽

最近,在使用Qt做一个小软件,其中用到了QGraphicsItem,并且需要使用信号与槽机制.QGraphiIcs的子类要实现信号与槽机制需要继承QObject.

class Node : public QObject,public QGraphicsItem {
Q_OBJECT      
....
}

注意:一定要将public QObject放在public QGraphicsItem的前面,并且在该类的定义中添加Q_OBJECT宏.


编译时出现警告 Warning: Class Node implements the interface QGraphicsItem but does not list it in Q_INTERFACES. qobject_cast to QGraphicsItem will not work!

在类的声明中添加:Q_INTERFACES(QGraphicsItem)可解决该问题.

你可能感兴趣的:(qt,QGraphicsItem)