当我在场景上拖动父项时,父项的位置会正确更新(通过覆盖itemChange()),而子项也会移动但是当我执行qDebug()<< childItem.pos(),它仍然显示初始化的第一个值。 (也覆盖了孩子obj的itemChange()fn)。我究竟做错了什么?请指导我。
粗略代码:
Parent的itemChange()
if (change == ItemPositionChange && scene()) {
QPointF newPos = value.toPointF();
return newPos;
}
else
return QGraphicsItem::itemChange(change, value);
}
“change == ItemPositionChange”为子项返回false。