특정 창에서 소유 한 QQuickItem
을 다른 창으로 렌더링해야합니다. 기본적으로 MyQQuickItem
은 window1이 소유하며 window2에 렌더링됩니다. 이 스위치는 특정 기능으로 인해 내 앱에서 반복적으로 발생해야합니다.부모 계층을 변경하지 않고 두 번째 창에서 QQuickItem을 렌더링하십시오.
목표를 달성하기 위해 다음을 수행합니다. & 코드는 기본적으로 매우 양호한으로 작동합니다.
코드 :
MyQQuickItem * myQuickItem = qmlEngine->rootObjects()[0]->findChild<QQuickItem*>("myquickitemobject");
myQuickItem->setParentItem(window1->contentItem());
// do the required on window2
// then set window1 as parent back again
myQuickItem->setParentItem(window2->contentItem());
문제 : 기술 위
기능적으로 잘 작동합니다. 그러나 이것은 내가 창 1에서 창 2로 부모 항목을 설정하는 것 사이에 저글링을 몇 번 던져서 다시 뒤집기를 요구합니다. &.
질문 :
는 는 2 개 창 사이 MyQQuickItem
를 공유 할 수있는 다른 방법 있습니까? 또는 양쪽 창에 MyQQuickItem
표시를 가능하게 할 수 있습니까?을 변경하지 않고도 을 사용할 필요가 없습니까?
나는 이것이 가능하지 않다고 생각합니다. 어쩌면 저레벨 윈도우 또는 OpenGL 클래스를 사용하여 재생할 수도 있지만 qml/quick은 사용하지 않습니다. 위젯에 배치하고 위젯 부모를 변경할 수도 있지만 – Felix
https://stackoverflow.com/questions/46117093/how-create-a-separate-copy-of-a-qquickitem-render-it-on- a-different-window # comment79199704_46117093 – GrecKo