Sur cette page

QSurface Class

La classe QSurface est une abstraction des surfaces à rendre dans Qt. Plus d'informations...

En-tête : #include <QSurface>
CMake : find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake : QT += gui
Héritée de :

QOffscreenSurface et QWindow

Types publics

enum SurfaceClass { Window, Offscreen }
enum SurfaceType { RasterSurface, OpenGLSurface, OpenVGSurface, VulkanSurface, MetalSurface, Direct3DSurface }

Fonctions publiques

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

Fonctions protégées

QSurface(QSurface::SurfaceClass type)

Description détaillée

La taille de la surface est accessible par la fonction size(). Les attributs de la surface spécifiques au rendu sont accessibles via la fonction format().

Documentation des types de membres

enum QSurface::SurfaceClass

L'enum SurfaceClass décrit la sous-classe de la surface.

ConstanteValeurDescription de la surface
QSurface::Window0La surface est une instance de QWindow.
QSurface::Offscreen1La surface est une instance de QOffscreenSurface.

enum QSurface::SurfaceType

L'énumération SurfaceType décrit le type de surface dont il s'agit.

ConstanteValeurDescription de la surface
QSurface::RasterSurface0La surface est composée de pixels et peut être rendue à l'aide d'un rasterizer logiciel tel que le moteur de peinture matricielle de Qt.
QSurface::OpenGLSurface1La surface est compatible avec OpenGL et peut être utilisée avec QOpenGLContext.
QSurface::OpenVGSurface3La surface est compatible avec OpenVG et peut être utilisée avec les contextes OpenVG.
QSurface::VulkanSurface4La surface est compatible avec Vulkan et peut être utilisée avec l'API graphique Vulkan.
QSurface::MetalSurface5La surface est compatible avec Metal et peut être utilisée avec l'API graphique Metal d'Apple. Ce type de surface n'est pris en charge que sur macOS et iOS.
QSurface::Direct3DSurface6La surface est compatible avec Direct 3D 11 et 12 et peut être utilisée avec les API DXGI et Direct3D. Ce type de surface n'est pris en charge que sous Windows.

Documentation des fonctions membres

[explicit protected] QSurface::QSurface(QSurface::SurfaceClass type)

Crée une surface avec l'adresse type.

[virtual noexcept] QSurface::~QSurface()

Détruit la surface.

[pure virtual] QSurfaceFormat QSurface::format() const

Renvoie le format de la surface.

[pure virtual] QSize QSurface::size() const

Renvoie la taille de la surface en pixels.

bool QSurface::supportsOpenGL() const

Retourne true si la surface est compatible OpenGL et peut être utilisée avec QOpenGLContext; sinon retourne false.

QSurface::SurfaceClass QSurface::surfaceClass() const

Renvoie la classe de surface de cette surface.

[pure virtual] QPlatformSurface *QSurface::surfaceHandle() const

Renvoie une poignée vers l'implémentation de la surface spécifique à la plate-forme.

[pure virtual] QSurface::SurfaceType QSurface::surfaceType() const

Renvoie le type de la surface.

© 2026 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.