2016-11-09 32 views
0

我有一個QQuickView,我使用createWindowContainer()嵌入到另一個小部件中。Qt:隱藏然後顯示QQuickView可以防止未來的鼠標事件

quickView = new QQuickView(...); 
container = new QWidget(); 
createWindowContainer(quickView, container); 

然後我將容器小部件添加到窗口內部的小部件。

layout = new QVBoxLayout(); 
fullWindowWidget->setLayout(layout); 
layout->addWidget(container); 

這似乎做工精細渲染明智的,但它似乎像QQuickView QML場景不處理鼠標事件,如果我隱藏然後顯示容器。如果我啓動的應用程序的容器可見,它處理鼠標事件罰款。但是,如果我從容器隱藏並顯示容器開始,那麼對容器的任何點擊似乎都會冒泡到它後面的小部件。隱藏容器是否會將QQuickView置於一種奇怪的狀態,即使它再次可見時也能防止點擊?

回答

0

看起來我在主窗口上打電話給grabMouse()。在顯示容器似乎修復它之前調用releaseMouse()