gpt4 book ai didi

c++ - QGraphicsItem在场景中的位置

转载 作者:行者123 更新时间:2023-11-28 06:45:47 25 4
gpt4 key购买 nike

我在 MAC OS X 10.9 上开发 QT 5.3 Widget 应用程序时遇到了问题。

在我的程序中,我有一个 QGraphicsView view 包含 QGraphicsScene scene contaning QGraphicsEllipseItem parent 我将其用作其他父级(以跟踪) QGraphicsEllipseItem,让我们将这最后一个椭圆称为 child

现在,我想获得 child 相对于 scene 的位置。

每当我现在尝试获取场景中的坐标时,它都会返回 [0,0]:

 QGraphicsItem * parent;
QGraphicsScene * scene;
....
parent = new QGraphicsEllipseItem(0,0,0,0);
scene = new QgraphicsScene();
scene.addItem(parent);
....
new QGraphicsItem(12,12,10,10,parent); //shown in the scene

qDebug() << parent->childItems()[0].scenepos(); //returns [0,0]
qDebug() << parent->childItems()[0].pos(); //returns [0,0]

如何获取元素相对于场景的坐标?

我已经阅读了一些关于这一点的教程,但我在其中迷路了或者不理解(英语不是我的母语)。

最佳答案

尝试使用函数 setPos() 设置项目的位置。

你用来获取场景位置的函数是正确的 scenePos() 或者你也可以使用 mapToScene()

关于c++ - QGraphicsItem在场景中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25016655/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com