我需要在同一个应用程序窗口中使用QWidgets和QML。我可以使用QWidget::createWindowContainer
嵌入QML。但是,我还需要指定自定义窗口标志。
以前,使用Qt Quick 2窗口,这没有问题:
qmlWindow()->setFlags((qmlWindow()->flags() | Qt::CustomizeWindowHint) & ~Qt::WindowTitleHint);
然而,当我做同样的事情时
_window.show();
QWindow *windowHandle = _window.windowHandle();
windowHandle->setFlags((windowHandle->flags() | Qt::CustomizeWindowHint) & ~Qt::WindowTitleHint);
在我的QWidget窗口上,只渲染了QWidget子视图,用QWidget::createWindowContainer
创建的QML没有。它们应该只有空(白色)空间。
这会导致什么问题?
鼠标点击是在它们应该的位置检测到的,“仅”显示器不在那里。控制台中没有警告消息。
这在OS X上发生,它在Windows上运行良好(至少在8.1上)。
谢谢!
答案 0 :(得分:0)
此问题似乎已在Qt 5.5.0中修复。