将 QWidget 或其他 QWidget 派生控件添加到 QWindow
Posted
技术标签:
【中文标题】将 QWidget 或其他 QWidget 派生控件添加到 QWindow【英文标题】:Add QWidget or other QWidget derived controls into QWindow 【发布时间】:2016-12-07 05:07:59 【问题描述】:QtGUI
和 QtWidgets
在 Qt5 中已分离。
如何将QWidget
或其他QWidget
派生控件添加到QWindow
?
【问题讨论】:
在 pro 文件中添加 QT += 小部件并在设计器或代码中添加 QWidget。这能回答你的问题吗? 为什么不使用小部件模块中的QMainWindow
。来自文档:应用程序通常将 QWidget 或 QQuickView 用于其 UI,而不是直接使用 QWindow。尽管如此,当想要将依赖关系保持在最低限度或想要直接使用 OpenGL 时,仍然可以使用 QBackingStore 或 QOpenGLContext 直接渲染到 QWindow。 Raster Window Example 和 OpenGL Window Example 是关于如何使用任一方法渲染到 QWindow 的有用参考示例。
【参考方案1】:
QWindow
不应该以这种方式使用。您不需要直接使用QWindow
,而是需要QWidget
。默认情况下,无父QWidget
成为***窗口。
如果您有特殊原因使用QWindow
,则必须编辑您的问题以提供有关您的设计的详细信息;很可能您的设计不正确。
【讨论】:
以上是关于将 QWidget 或其他 QWidget 派生控件添加到 QWindow的主要内容,如果未能解决你的问题,请参考以下文章
如果在派生的 QWidget 中加载 QUiLoader 小部件不显示