2014-11-13 5 views
0

현재 QtQuick을 사용하여 Qt/Qml로 개발 중입니다. 나는 내 장면의 항목이 최상위인지 알아 내야 할 시점에 이르렀다. 즉, 항목의 z 좌표가 가장 높은 항목인지 확인해야합니다. childAt 및 mapToScene을 사용하여 알고리즘을 만들려고했습니다. 이것이 끔찍하게 느리다는 것이 밝혀졌습니다. 그런 다음 itemAt()에 대해 알아 냈습니다. 불행히도 GraphicScene, 즉 위젯 세계에서만 사용할 수 있습니다.QmlScene (z-order)에서 QuickItem이 최상위에 있는지 찾는 방법은 무엇입니까?

내 질문 : QmlSceneGraph있는 itemAt() 해당하는 있습니까? 항목이 최상위 항목인지 어떻게 알 수 있습니까? 나는 정확한 z 순서조차 필요 없다, 다만 확인하기 위하여, 품목은 정상에 표시된다.

도움 주셔서 감사합니다. 이 오프닝 게시물에 말했듯이 독일

답변

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)); 
    } 
} 
+0

을 사용할 수 있습니다, 나는 이미 그것을 시도했다. 하지만 그 버그 (우리가 그 버그를 고칠 수 있었음에도 불구하고)와 우리는 모든 계층을 반복해야합니다. 궁금한 점이 있다면, Qt의 기본 솔루션이 있으면 상위 항목을 찾으십시오. – MattW