Sur cette page

QQuickTextureFactory Class

La classe QQuickTextureFactory fournit une interface permettant de charger des textures personnalisées à partir de QML. En savoir plus...

En-tête : #include <QQuickTextureFactory>
CMake : find_package(Qt6 REQUIRED COMPONENTS Quick)
target_link_libraries(mytarget PRIVATE Qt6::Quick)
qmake : QT += quick
Hérite de : QObject

Fonctions publiques

QQuickTextureFactory()
virtual ~QQuickTextureFactory() override
virtual QSGTexture *createTexture(QQuickWindow *window) const = 0
virtual QImage image() const
virtual int textureByteCount() const = 0
virtual QSize textureSize() const = 0

Membres publics statiques

QQuickTextureFactory *textureFactoryForImage(const QImage &image)

Description détaillée

L'usine de textures a pour but de fournir un espace réservé pour des données d'image pouvant être converties en texture OpenGL.

Il n’est pas possible de créer une texture directement, car il est rare qu’un contexte OpenGL soit disponible dans le thread chargé de charger les données d’image.

Documentation des fonctions membres

QQuickTextureFactory::QQuickTextureFactory()

Crée une fabrique de textures. Comme QQuickTextureFactory est une classe abstraite, elle ne peut pas être instanciée directement.

[override virtual noexcept] QQuickTextureFactory::~QQuickTextureFactory()

Supprime l'usine de textures.

[pure virtual] QSGTexture *QQuickTextureFactory::createTexture(QQuickWindow *window) const

Cette fonction est appelée sur le thread de rendu du graphe de scène pour créer une instance de ` QSGTexture ` à partir de l'usine. ` window ` fournit le contexte dans lequel cette texture est créée.

QML mettra en cache en interne la texture renvoyée si nécessaire. Chaque appel à cette fonction doit renvoyer une instance unique.

Le contexte OpenGL utilisé pour le rendu est lié lors de l'appel de cette fonction.

[virtual] QImage QQuickTextureFactory::image() const

Renvoie une version image de cette texture.

La durée de vie de l’image renvoyée étant inconnue, l’implémentation doit renvoyer une instance autonome de type ` QImage`, sans utiliser le constructeur ` QImage(uchar *, ...)`.

Cette fonction est peu utilisée et est susceptible d'être lente.

[pure virtual] int QQuickTextureFactory::textureByteCount() const

Renvoie le nombre d'octets de mémoire occupés par la texture.

[static] QQuickTextureFactory *QQuickTextureFactory::textureFactoryForImage(const QImage &image)

Renvoie une instance de ` QQuickTextureFactory ` contenant l'image` spécifié.

Cette fonction est généralement utilisée comme aide dans ` QQuickImageResponse::textureFactory`.

[pure virtual] QSize QQuickTextureFactory::textureSize() const

Renvoie la taille de la texture. Cette fonction sera appelée depuis des threads quelconques et ne doit pas dépendre d'un contexte OpenGL lié.

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