Sur cette page

Exemple de comparaison entre QQuickWidget et QQuickView

Cet exemple illustre les avantages d'QQuickWidget par rapport à un QQuickView intégré en tant que fenêtre native.

Logo Qt avec superposition rouge illustrant l'empilement des widgets

Cet exemple permet d'afficher la même scène Qt Quick au sein d'une même interface utilisateur basée sur QWidget, en utilisant deux approches différentes :

Cliquer sur la case à cocher « Show widget overlay » permet de voir un cas d’empilement de widgets qui ne s’affiche pas comme prévu lors de l’intégration d’une fenêtre native, tandis que « QQuickWidget » permet de l’afficher correctement.

Exécution de l’exemple

Vous pouvez exécuter l’exemple à partir de :

Remarques sur la plate-forme

La scène Qt Quick utilise le rendu OpenGL direct, même lorsqu’elle est intégrée à QQuickWidget. Cela confirme que le rendu continue d’utiliser l’API 3D accélérée.

Par conséquent, cet exemple est lié à OpenGL et ne fonctionnera pas avec d’autres API graphiques telles que Vulkan, Metal ou Direct3D.

Antialiasing multi-échantillonnage

Vous pouvez activer l’anticrénelage multi-échantillonnage en cochant la case correspondante. Lorsqu’il est activé, QQuickWidget effectue le rendu du contenu dans un tampon de rendu multi-échantillonnage. Après chaque passe de rendu, le contenu est converti en une texture 2D standard. Cela permet d’appliquer l’anticrénelage au contenu d’ Qt Quick sans affecter le reste de l’interface utilisateur basée sur QWidget.

Si vous utilisez « QQuickView », la fenêtre native demande un multisampling pour sa surface. Cela donne des résultats similaires, en fonction de la prise en charge par la plateforme.

Saisie au clavier

La scène Qt Quick prend en charge l’interaction utilisateur, y compris la saisie de texte, quelle que soit la technologie d’intégration utilisée. Lorsque vous utilisez QQuickWidget, les événements de saisie sont automatiquement transmis à la scène Qt Quick.

Exemple de projet sur code.qt.io

Voir également les widgets «Qt Quick ».

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