我需要知道如何在我的Scene
中选择一个QGraphicItem
。我正在使用来自方法selectionChange()
的信号,但没有任何作用。这是我的代码:
scene.h
class Scene : public QGraphicsScene{
public:
Scene(QGraphicsScene *scene = 0);
~Scene();
private slots:
void test();
};
scene.cpp
Scene::Scene(QGraphicsScene* scene):QGraphicsScene(scene)
{
connect(this, SIGNAL(QGraphicsScene::selectionChanged()), this, SLOT(test()));
}
void Scene::test() {
qDebug() << "I'm here ";
}
我想问题在于我的场景继承自QGraphicScene
,或者在构造函数中定义连接不是一个好主意。
QGraphicsItem :: ItemIsSelectable
标志,因此请查看setFlags。 - scopchanovconnect(this, SIGNAL(selectionChanged()), this, SLOT(test()));
。 - vahanchoconnect
行,但没有从代码中删除已经不必要的限定符QGraphicsScene::
。 - scopchanov