У меня есть QGraphicsScene
, на котором отображаются некоторые пользовательские QGraphicsItems
.Эти предметы описаны в классе MeasurePoint
, который наследуется от QGraphicsItem
.Они также хранятся в QList
, поэтому у каждого элемента есть свой индекс.Они добавляются в сцену следующим образом:
void MeasureSpline::addNode(qreal xPos, qreal yPos, QGraphicsScene *scene)
{
MeasurePoint *point = new MeasurePoint(xPos, yPos, points.size());
points.append(point);
point->setPoint(scene);
}
, где points
:
QList<MeasurePoint*> points;
, и каждый MeasurePoint
построен так:
MeasurePoint::MeasurePoint(qreal a, qreal b, int c)
{
xPos = a;
yPos = b;
index = c;
movable = false;
selected = false;
}
и setPoint()
- это:
void MeasurePoint::setPoint(QGraphicsScene *scene)
{
scene->addItem(this);
}
У меня есть метод установки подвижных элементов.Если я использую этот метод, предметы становятся подвижными, и я доволен результатом.Но моя текущая цель - узнать, какой из предметов перемещается в данный момент.Это можно сделать?Как?Любая помощь приветствуется.