我添加了QDialog
一个QQuickWidget
以加载a,.qml
但其背景颜色为白色。我的qml声明Rectangle
未填充所有QQuickWidget
表面。我需要对话框背景颜色相同的未填充表面。具有透明背景的方法是什么?
在QQuickWidget
文档中对其进行了解释:QQuickWidget
限制
将其他小部件放在下面,并使QQuickWidget透明将不会导致预期的结果:下面的小部件将不可见。这是因为实际上QQuickWidget是在所有其他常规非OpenGL小部件之前绘制的,因此透明类型的解决方案是不可行的。其他类型的布局,例如将小部件放在QQuickWidget的顶部,将按预期运行。
在绝对必要时,可以通过在QQuickWidget上设置Qt :: WA_AlwaysStackOnTop属性来克服此限制。但是请注意,这会破坏堆叠顺序。例如,不可能在QQuickWidget的顶部放置其他小部件,因此仅应在需要半透明QQuickWidget及其下方可见其他小部件的情况下使用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句