首页 > 解决方案 > qt3d窗口内的Qt小部件

问题描述

如何将标签或按钮放入 qt3d 窗口?可能吗?还没有看到任何例子......我试图简单地将 qt3d 放在 windowcontainer 中,为其分配布局和 layout->addWiget() 但它不起作用。

标签: c++qtqt3d

解决方案


我知道这是一个非常古老的问题,但如果其他人偶然发现这个问题,我想给出更详细的答案。

  1. 我实现了一个 Qt3D 小部件,您可以在此处找到。不幸的是,它依赖于一种获取纹理 id 的方法,该方法QAbstractTexture只能从 Qt >= 5.13 获得,因此这是您必须使用的最低版本。

  2. createWindowContainer在其他所有内容之上绘制相应的窗口。因此,您将永远无法在容器内绘制任何按钮。

  3. 您当然可以在容器化 3D 窗口周围设置按钮和其他所有内容。但这并不是你想要的。

  4. 您可以使用Dear ImGui - 它是Qt3D 集成。ImGui 用于在 3D 环境中使用顶点绘制 GUI 元素。

  5. 当然,您始终可以使用 QML - 您应该可以在 3D 视图中放置按钮。


推荐阅读