Sur cette page

QWindowCapture Class

Cette classe est utilisée pour capturer une fenêtre. Plus d'informations...

En-tête : #include <QWindowCapture>
CMake : find_package(Qt6 REQUIRED COMPONENTS Multimedia)
target_link_libraries(mytarget PRIVATE Qt6::Multimedia)
qmake : QT += multimedia
Depuis : Qt 6.6
Dans QML : WindowCapture
Hérites : QObject

Types publics

enum Error { NoError, InternalError, CapturingNotSupported, CaptureFailed, NotFound }

Propriétés

Fonctions publiques

QWindowCapture(QObject *parent = nullptr)
virtual ~QWindowCapture() override
QWindowCapture::Error error() const
QString errorString() const
bool isActive() const
void setWindow(QCapturableWindow window)
QCapturableWindow window() const

Emplacements publics

void setActive(bool active)
void start()
void stop()

Signaux

void activeChanged(bool)
void errorChanged()
void errorOccurred(QWindowCapture::Error error, const QString &errorString)
void windowChanged(QCapturableWindow window)

Membres publics statiques

QList<QCapturableWindow> capturableWindows()

Description détaillée

Cette classe capture une fenêtre. Elle est gérée par la classe QMediaCaptureSession où la fenêtre capturée peut être affichée dans un objet de prévisualisation vidéo ou enregistrée dans un fichier.

Limites de la capture de fenêtre

Les limitations suivantes s'appliquent à l'utilisation de QWindowCapture :

  • QWindowCapture n'est pris en charge qu'avec le backend FFmpeg.

Les limitations suivantes s'appliquent à l'utilisation de QWindowCapture sur les systèmes X11 :

  • Sur les systèmes Linux X11, lorsqu'une fenêtre est déplacée partiellement en dehors de la zone visible de l'écran, seule la zone visible est capturée. Par conséquent, les images vidéo émises peuvent avoir une taille inférieure à la géométrie de la fenêtre.
  • Les fenêtres situées en dehors de la zone visible de l'écran ne peuvent pas être capturées et un signal d'erreur est émis dans ce cas.
  • Le comportement des fenêtres réduites ou situées sur un espace de travail virtuel invisible dépend du gestionnaire de fenêtres. Par exemple, de telles fenêtres peuvent être capturées sous GNOME, alors que sous WindowMaker ou Xfwm une telle capture n'est pas autorisée, et l'instance de capture de fenêtre émet une erreur.

Voir également QMediaCaptureSession et QCapturableWindow.

Documentation sur les types de membres

enum QWindowCapture::Error

Enumère les codes d'erreur qui peuvent être signalés par la classe QWindowCapture. errorString() fournit des informations détaillées sur la cause de l'erreur.

ConstanteValeurDescription de l'erreur
QWindowCapture::NoError0Pas d'erreur
QWindowCapture::InternalError1Erreur interne du pilote de capture de fenêtre
QWindowCapture::CapturingNotSupported2La capture de fenêtre n'est pas prise en charge
QWindowCapture::CaptureFailed4Échec de la capture de la fenêtre
QWindowCapture::NotFound5La fenêtre sélectionnée n'a pas été trouvée

Documentation sur les propriétés

active : bool

Cette propriété indique si la capture est actuellement active.

Fonctions d'accès :

bool isActive() const
void setActive(bool active)

Signal du notificateur :

void activeChanged(bool)

Voir également start() et stop().

[read-only] error : Error

Cette propriété contient le code de la dernière erreur.

Fonctions d'accès :

QWindowCapture::Error error() const

Signal du notificateur :

void errorChanged()

[read-only] errorString : QString

Cette propriété contient une chaîne lisible par l'homme décrivant la cause de l'erreur.

Fonctions d'accès :

QString errorString() const

Signal du notificateur :

void errorChanged()

window : QCapturableWindow

Cette propriété contient la fenêtre de capture.

Fonctions d'accès :

QCapturableWindow window() const
void setWindow(QCapturableWindow window)

Signal du notificateur :

void windowChanged(QCapturableWindow window)

Voir aussi QWindowCapture::capturableWindows.

Documentation des fonctions membres

[explicit] QWindowCapture::QWindowCapture(QObject *parent = nullptr)

Construit un nouvel objet QWindowCapture avec parent.

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

Détruit l'objet.

[static invokable] QList<QCapturableWindow> QWindowCapture::capturableWindows()

Renvoie une liste d'objets QCapturableWindow disponibles pour la capture.

Note : Cette fonction peut être invoquée via le système de méta-objets et à partir de QML. Voir Q_INVOKABLE.

[signal] void QWindowCapture::errorOccurred(QWindowCapture::Error error, const QString &errorString)

Signale l'apparition d'une error, ainsi que la errorString.

[slot] void QWindowCapture::start()

Commence à capturer le site window.

Cela équivaut à donner à la propriété active la valeur true.

[slot] void QWindowCapture::stop()

Arrête la capture.

Cela équivaut à définir la propriété active sur false.

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