QQuickWidget - QQuickView 比较示例
显示将 QQuickWidget 作为原生前端嵌入时的优势。
示例允许在不同方法中使用相同的 Qt Quick 场景:一种方法是用 QQuickView 并将其作为子窗口和 QWidget::createWindowContainer() 使用;另一种方法是使用 QQuickWidget,它作为一个真正的 QWidget 使用,并支持更好的裁剪和堆叠,如真正的 QWidget 所期望的。
Qt Quick 场景还使用直接 OpenGL 渲染,这证明了 QQuickWidget 中渲染仍然使用加速的 3D API。这意味着本例与 OpenGL 相关,无法使用其他图形 API(Vulkan、Metal、Direct 3D)。
点击“显示叠加”复选框可以演示一个当嵌入本地窗口时没有按预期渲染的窗口堆叠情况,而 QQuickWidget 则使其按预期渲染。
也可以进行多采样抗锯齿练习。通过相应的复选框启用它后,QQuickWidget 将将内部渲染到多个样本渲染缓冲区,然后在每个渲染传递之后将其解析为常规的非多个样本 2D 纹理,从而在不影响 QWidget UI 的其余部分的情况下启用 Qt Quick 内容的多采样。如果平台支持,使用 QQuickView 的本地窗口将请求其相应窗口表面的多采样,产生类似的结果。
Qt Quick 场景是交互式的:无论使用哪种嵌入技术,都可以在文本字段中键入。QQuickWidget 会自动将输入事件转发到底层的 Qt Quick 场景。
© 2024 Qt 公司有限公司。本文件中包含的文档贡献的版权属于其各自的所有者。所提供的文档是根据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款授权的。Qt 和相应的徽标是芬兰和/或世界各地的 Qt 公司有限公司的商标。所有其他商标均为各自所有者的财产。