0

目前我正在使用 QtQuick 在 Qt / Qml 中进行开发。我到了一个点,我需要找出我的场景中的一个项目是否在最上面。也就是说,我需要查找该项目是否具有最高的 z 坐标。我尝试使用 childAt 和 mapToScene 构建算法。事实证明,这非常慢。然后我发现了 itemAt()。不幸的是,它仅在 GraphicScene 中可用,即在小部件世界中。

现在我的问题是:QmlSceneGraph 中是否有与 itemAt() 等价的东西?我怎样才能知道,如果一个项目是最上面的?我什至不需要确切的 z 顺序,只是为了确保项目显示在顶部。

谢谢你的帮助。

来自德国的问候

4

1 回答 1

1

您可以使用Item::childAt(real x,real y)方法

ApplicationWindow {
   id: root
   visible: true
   MouseArea {
      anchors.fill: parent
      onClicked: console.log(root.contentItem.childAt(mouse.x,mouse.y));
   }
}
于 2014-11-13T14:34:44.057 回答