如何找到QuickItem在QmlScene(z-order)中是否是最顶级的?

时间:2014-11-13 12:39:42

标签: c++ qt qml qt-quick scenegraph

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

现在我的问题:QmlSceneGraph中是否有与itemAt()相同的东西?如果项目是最顶级的,我怎么才能知道?我甚至不需要确切的z顺序,只是为了确保该项目显示在顶部。

感谢您的帮助。

来自德国的问候

1 个答案:

答案 0 :(得分: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));
   }
}