QSurface Class
QSurface 类是 Qt 中可渲染曲面的抽象。更多
头文件: | #include <QSurface> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
继承于 |
公共类型
enum | SurfaceClass { Window, Offscreen } |
enum | SurfaceType { RasterSurface, OpenGLSurface, RasterGLSurface, OpenVGSurface, VulkanSurface, …, Direct3DSurface } |
公共函数
virtual | ~QSurface() |
virtual QSurfaceFormat | format() const = 0 |
virtual QSize | size() const = 0 |
bool | supportsOpenGL() const |
QSurface::SurfaceClass | surfaceClass() const |
virtual QPlatformSurface * | surfaceHandle() const = 0 |
virtual QSurface::SurfaceType | surfaceType() const = 0 |
受保护函数
QSurface(QSurface::SurfaceClass type) |
成员类型文档
enum QSurface::SurfaceClass
SurfaceClass 枚举描述曲面的实际子类。
常量 | 值 | 描述 |
---|---|---|
QSurface::Window | 0 | 曲面是QWindow 的实例。 |
QSurface::Offscreen | 1 | 曲面是QOffscreenSurface 的实例。 |
enum QSurface::SurfaceType
SurfaceType 枚举描述了曲面的类型。
常数 | 值 | 描述 |
---|---|---|
QSurface::RasterSurface | 0 | 曲面由像素组成,可使用软件光栅器(如 Qt 的光栅绘制引擎)进行渲染。 |
QSurface::OpenGLSurface | 1 | 该曲面是与 OpenGL 兼容的曲面,可与QOpenGLContext 一起使用。 |
QSurface::RasterGLSurface | 2 | 该曲面可使用软件光栅器渲染,也支持 OpenGL。该曲面类型供 Qt 内部使用,需要使用私有 API。 |
QSurface::OpenVGSurface | 3 | 该曲面是与 OpenVG 兼容的曲面,可与 OpenVG 上下文结合使用。 |
QSurface::VulkanSurface | 4 | 该曲面是 Vulkan 兼容曲面,可与 Vulkan 图形 API 结合使用。 |
QSurface::MetalSurface | 5 | 该曲面是与 Metal 兼容的曲面,可与 Apple 的 Metal 图形 API 结合使用。此曲面类型仅支持 macOS 和 iOS。 |
QSurface::Direct3DSurface | 6 | 该曲面是 Direct 3D 11 和 12 兼容曲面,可与 DXGI 和 Direct3D API 结合使用。此曲面类型仅在 Windows 上受支持。 |
成员函数文档
[explicit protected]
QSurface::QSurface(QSurface::SurfaceClass type)
用给定的type 创建一个曲面。
[virtual noexcept]
QSurface::~QSurface()
破坏地表
[pure virtual]
QSurfaceFormat QSurface::format() const
返回曲面的格式。
[pure virtual]
QSize QSurface::size() const
以像素为单位返回曲面的大小。
bool QSurface::supportsOpenGL() const
如果曲面兼容 OpenGL 并可与QOpenGLContext 结合使用,则返回 true;否则返回 false。
QSurface::SurfaceClass QSurface::surfaceClass() const
返回此曲面的曲面类别。
[pure virtual]
QPlatformSurface *QSurface::surfaceHandle() const
返回曲面平台特定实现的句柄。
[pure virtual]
QSurface::SurfaceType QSurface::surfaceType() const
返回曲面的类型。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.