Sur cette page

Nouveautés de Qt 6.10

Modules nouveaux et restaurés dans Qt 6.10

Qt 6.10 ajoute les modules et outils suivants :

Nouvelles fonctionnalités de Qt 6.10

Qt Core Le module

Qt D-Bus Le module

Qt Graphs Module

Qt GRPC Module

Qt GUI Module

  • QStyleHints::accessibility permet d'accéder aux préférences d'accessibilité de l'utilisateur, par exemple si le système a activé un paramètre pour augmenter le contraste.
  • Ajout de QAccessibilityHints pour accéder aux paramètres d'accessibilité individuels.
  • QRhi: Ajout de la prise en charge de l'énumération des adaptateurs graphiques 3D (périphériques physiques), lors de l'exécution de Direct 3D 11, 12 ou Vulkan, via la fonction enumerateAdapters().
  • QPainterPath::setCachingEnabledLa fonction () peut être utilisée pour activer la mise en cache des valeurs calculées, ce qui augmente les performances de certaines opérations au prix d'une utilisation supplémentaire de la mémoire.
  • Ajout de QPainterPath::trimmed() pour retourner une section du chemin.

Module Qt HttpServer

Qt Lottie Animation

  • Ajout de la prise en charge des couches solides, nulles et de précomposition.
  • Ajout de l'outil lottietoqml. Il s'agit d'un outil équivalent à svgtoqml qui convertit les fichiers Lottie en scènes Qt Quick décrites en QML. Il est actuellement en tech preview.
  • Ajout d'un plugin pour VectorImage qui lui permet de charger des fichiers Lottie en plus du SVG. Cette fonctionnalité est en avant-première technique et nécessite que assumeTrustedSource soit réglé sur true.
  • Ajout d'un exemple lottietoqml et d'un exemple qtlottieviewer pour démontrer l'utilisation de Qt Lottie Animation.

Qt Multimedia Module

  • Ajout d'un backend audio PipeWire natif.
  • Compensation de la hauteur de l'audio pour le site QMediaPlayer basé sur FFmpeg et basé sur l'excellente bibliothèque Stretch de Signalsmith. Le comportement peut être personnalisé via la propriété pitchCompensation.
  • QCapturableWindow La classe QWindow peut désormais être construite à partir de en C++ et en QML.
  • Ajout d'une nouvelle classe QPlaybackOptions qui permet aux utilisateurs de contrôler les options de lecture de bas niveau de FFmpeg, par exemple, l'intention de lecture, le délai d'attente du réseau et la taille de la sonde.
  • Dans QAudioSink et QAudioSource, ajout de méthodes qui permettent aux utilisateurs d'opérer avec le tampon audio sous-jacent en nombre d'images plutôt qu'en nombre d'octets.

Qt Network Module

  • Ajout de la méthode fromFile() à QSslCertificate.
  • Ajout de la méthode setDateTimeValue() à QHttpHeaders, une méthode de commodité pour définir les valeurs de date et d'heure dans les en-têtes HTTP.
  • Ajout de méthodes de commodité à QHttpHeaders pour récupérer des valeurs sous forme de QDateTime, d'entiers ou de listes de ces types.

Qt Protobuf Module

Qt Qml Module

  • Ajout d'un nouveau type QML TreeModel qui permet de définir une structure arborescente dans le fichier QML et qui fonctionne avec TreeView.
  • Ajout d'un type QML SortFilterProxyModel pour trier et filtrer les données du modèle. Cette fonctionnalité est en avant-première technique.
  • La propriété delegateModelAccess a été ajoutée à DelegateModel et à toutes les vues. Vous pouvez maintenant écrire dans le modèle à travers les propriétés requises.
  • Ajout du type QML Synchronizer. Synchronizer permet de synchroniser deux ou plusieurs propriétés sans utiliser de bindings. Cette fonctionnalité est en aperçu technique.
  • Ajout de règles de personnalisation du point-virgule à qmlformat. Vous pouvez maintenant contrôler si les points-virgules sont ajoutés à la fin des déclarations JS.
  • Ajout de nouveaux avertissements qmllint axés sur l'amélioration de la compatibilité avec Qt Creator, y compris des vérifications pour les limitations spécifiques à Qt Design Studio, des avertissements supplémentaires liés à JavaScript, et plusieurs nouveaux avertissements liés aux enums et aux importations QML.
  • Suppression de la prise en charge de la manipulation de structures de lignes complexes à partir de TableModel.
  • Modification de l'ordre des paramètres de rôle et de valeur dans TableModel::setData pour résoudre une ambiguïté.

Qt Quick Module

  • Ajout du type QML FlexboxLayout pour arranger les éléments rapides de manière flexible comme dans le cas de CSS Flexbox. Cette fonctionnalité est en version tech preview.

Qt Quick Module Contrôles

  • Le style FluentWinUI3 a amélioré le support des thèmes contrastés sur Windows 11.
  • Ajouté SearchField Contrôle

Qt Quick Module Dialogues

  • Ajout de la propriété popupType qui peut être utilisée pour contrôler si un dialogue non natif doit s'ouvrir dans une fenêtre séparée ou en tant qu'élément de la scène existante. Cela n'a pas d'effet lors de l'utilisation de dialogues natifs.

Qt Quick Module Effets

Qt Quick Module 3D

  • Ajout d'emitType aux émetteurs de forme pour permettre aux particules d'être émises en fonction des normales de surface de la forme.
  • Implémentation des émetteurs reversed pour permettre aux particules de s'exécuter de l'heure de fin à l'heure de début.
  • Plusieurs améliorations et changements liés à la carte lumineuse :
    • Introduction de tailles de lightmap basées sur le nombre de texels par unité, en ajoutant les propriétés Model::texelsPerUnit et Lightmapper::texelsPerUnit et en remplaçant la propriété Model::lightmapBaseResolution, désormais obsolète.
    • Introduction de la propriété Lightmapper::source pour définir une source d'éclairage pour l'ensemble de la scène, en remplacement de la propriété BakedLightmap::loadPrefix qui est obsolète.
    • Ajout d'un débruitage intégré basé sur le GPU (Non-local Means, NLM) pour les lightmaps cuites, contrôlé par la propriété Lightmapper::denoiseSigma.
    • La fenêtre de cuisson des lightmaps a été améliorée pour afficher une barre de progression et une estimation du temps restant.
    • La cuisson est désormais effectuée dans son propre contexte RHI et ne bloque pas le rendu de l'application en cours.
    • L'utilisation de la RAM et de la VRAM a été réduite lors de la cuisson de certaines scènes.
    • Ajout d'un outil de visualisation des images lumineuses pour déboguer les fichiers d'images lumineuses cuits via l'interface graphique ou la ligne de commande.
  • Correction de l'importation des couleurs pour glTF2 baseColorFactor en convertissant correctement de linear à sRGB, en l'alignant avec la spécification.
  • Ajout de CapsuleGeometry à QtQuick3D.Helpers avec des textures fixes, la prise en charge de la création asynchrone et la propriété uvProfile exposée.

Qt Quick Module 3D XR

  • Exposé method pour demander le balayage de la pièce pour les ancrages spatiaux.

Qt Quick Module 3D Physics

Qt Quick Module VectorImage

  • Ajout de la prise en charge des SVG animés qui correspond à la prise en charge des animations dans Qt SVG.
  • Ajout de API pour indiquer si le fichier source est fiable ou non.
  • Ajout de API pour contrôler le comportement de l'animation.
  • En incluant un plugin fourni par Qt Lottie AnimationVectorImage peut désormais afficher des fichiers Lottie. Cette fonctionnalité est considérée comme un aperçu technique et nécessite que assumeTrustedSource soit défini sur true.

Qt Serial Port Module

  • Ajout de la prise en charge de la limitation de la taille du tampon d'écriture à l'aide de la propriété writeBufferSize.

Qt Serial Bus Module

Module Qt SQL

Qt SVG Module Sql

  • Ajout du support des animations CSS pour les propriétés fill-opacity, stroke-opacity et opacity.
  • Ajout d'un exemple démontrant comment visualiser les fichiers SVG.

Qt Test Module

  • Les benchmarks basés sur les données identifient maintenant les données globales et locales dans les noms en clair.
  • Les backtraces de lldb sont maintenant désactivées sur Apple Silicon
  • Lorsque QTest imprime des valeurs en virgule flottante dans une comparaison, il donne maintenant la précision complète et inclut une version hexfloat.

Module Qt VirtualKeyboard

  • Ajout des informations PURL et CPE aux fichiers d'attribution des sources tierces.
  • Ajout de la disposition du clavier letton.

Qt WebEngine Module

Qt WebView Module

  • Ajout du plugin WebView2 pour la plateforme Windows. Le nouveau backend utilise une API COM native du navigateur Edge basé sur Chromium appelée WebView2. Par conséquent, vous pouvez maintenant fournir du contenu web sans expédier Qt WebEngine.

Qt Widgets Module

Qt XML Module

Qt MQTT Module

  • Ajout de la prise en charge des WebSockets/Secure WebSockets

Outils

Générateur de documentation QDoc

  • QDoc peut désormais ajouter automatiquement des liens "view source" à chaque déclaration d'API C++. Activez cette fonctionnalité avec la nouvelle famille de variables de configuration url.sources (url.sources.enabled, url.sources.rootdir, url.sources.linktext).
  • QDoc détecte désormais l'héritage circulaire dans les types QML en utilisant l'algorithme de recherche de cycle de Floyd et signale le problème au lieu de rester bloqué dans une boucle infinie.
  • Les groupes de propriétés QML définis dans les fichiers .qml sont reconnus et affichés comme une seule propriété groupée lorsque vous les documentez avec les commandes \qmlproperty.
  • Les fichiers sources générés par les outils Qt (moc_, uic_, qrc_, etc.) sont maintenant sautés automatiquement, ce qui réduit les temps de construction de QDoc sur les grands projets.
  • Le type de données affiché pour une propriété QML dans un fichier .qml peut désormais être modifié directement dans la commande \qmlproperty, même pour les propriétés non altérées.
  • L'option documentationinheaders n'est plus proposée en tant qu'aperçu technologique ; elle est désormais considérée comme stable. Elle a été introduite pour la première fois dans Qt 6.9.
  • Lors de la génération d'une sortie DocBook, QDoc inclut maintenant les notes de surcharge.
  • Les signaux et les slots surchargés incluent désormais un extrait contextuel pour montrer leur utilisation.
  • QDoc peut être lié aux bibliothèques Clang à partir de LLVM 21.
  • Les fichiers .index incluent le type de retour déclaré par les commandes \fn. Ceci est utile pour les constructions multi-projets, lorsque les auteurs surchargent le type de retour d'une fonction avec auto.
  • Vous pouvez maintenant documenter vos énumérations QML avec la nouvelle commande \qmlenum . QDoc crée une nouvelle section, QML Enumerations, dans la documentation générée.
  • L'indentation des extraits de code est désormais normalisée, en supprimant l'excès d'espace blanc dans la marge gauche. Cela signifie que les extraits de code provenant d'une source fortement indentée (par exemple, dans une série profondément imbriquée de if-statements) se présenteront comme s'ils n'étaient pas imbriqués.
  • QDoc analyse désormais correctement les alias de modèles avec des paramètres par défaut.
  • QDoc n'établit plus de lien automatique vers les fonctions obsolètes s'il existe des alternatives non obsolètes.
  • Vous pouvez empêcher la traduction automatique des chaînes de caractères en utilisant la nouvelle commande \notranslate.

Qt Linguist

  • Ajout de la prise en charge de l'organisation des traductions basées sur l'ID avec des étiquettes personnalisées dans Qt Linguist et lupdate.
  • Introduction d'une fonctionnalité de prévisualisation de formulaire QML dans Qt Linguist pour la validation visuelle des traductions en contexte.
  • Mise à jour de Qt Linguist avec une interface rafraîchie, comprenant de nouvelles icônes, une palette de couleurs améliorée et une meilleure gestion du mode sombre.
  • lupdate et lrelease supportent maintenant le mélange de traductions basées sur l'ID et de traductions basées sur le texte dans le même document.
  • Suppression de l'analyseur syntaxique de lupdate, basé sur Clang.
  • Support unifié des méta-chaînes (commentaires comme // : et //~) à travers différents langages de programmation dans lupdate.
  • Ajout de nouveaux exemples i18n à la documentation.
  • lrelease fournit maintenant l'option -fail-on-unfinished pour faire échouer la construction s'il y a des traductions non terminées.
  • L'utilisation des commentaires de //= metastring pour définir les identifiants des traductions textuelles n'est plus recommandée.

Changements dans la plateforme

Changements dans le système de construction

  • L'utilisation d'un module Qt Foo privé nécessite maintenant un appel à find_package(Qt6 COMPONENTS FooPrivate) pour rendre la cible Qt6::FooPrivate disponible.
  • Ajout d'une option DISCARD_FILE_CONTENTS à qt_add_resources().
  • L'option FILENAME_VARIABLE de qt6_generate_deploy_[app_]script, qui était obsolète dans Qt 6.6.0, a été supprimée.
  • Ajout de l'argument NO_PLUGINS à qt_deploy_runtime_dependencies qui désactive complètement le déploiement du plugin.
  • Ajout des arguments INCLUDE_PLUGIN_TYPES, EXCLUDE_PLUGIN_TYPES, INCLUDE_PLUGINS, et EXCLUDE_PLUGINS à qt_deploy_runtime_dependencies.
  • Ajout des arguments pour la sélection des plugins Qt à qt_generate_deploy_app_script.
  • qt6_import_plugins n'a plus d'effet sur le déploiement de plugins avec l'API de déploiement CMake sous Linux.
  • qt6_deploy_runtime_dependencies supporte maintenant les drapeaux de sélection de plugins suivants sous Linux : INCLUDE_PLUGINS, INCLUDE_PLUGIN_TYPES, EXCLUDE_PLUGINS, EXCLUDE_PLUGIN_TYPES.
  • Ajout d'une option DISCARD_QML_CONTENTS à qt_add_qml_module(), qui supprime le contenu des fichiers QML et JS originaux du système de ressources de la cible.

Plates-formes de bureau

Windows

Linux

  • Les binaires pré-construits pour Linux desktop sont maintenant construits en utilisant RHEL9, ce qui augmente le minimum requis de glibc de 2.28 à 2.34.

macOS

  • Les fenêtres qui optent pour la plage dynamique étendue (EDR) déclenchent désormais un événement d'exposition en cas de changement de luminosité de l'écran.
  • La propriété d'accessibilité titleUIElement est désormais prise en charge.
  • L'intégration du menu de service prend désormais en compte le texte riche
  • QOperatingSystemVersion::MacOSTahoe représente macOS 26
  • Des correspondances pour WhatsThisCursor et BusyCursor ont été ajoutées.
  • QImage::toCGImage() propage désormais l'espace colorimétrique de l'image

Client Wayland sous Linux

Plates-formes mobiles

Android

Qt pour Android
  • Mise à jour de Gradle vers la version 8.14.2 et du plugin Android Gradle AGP vers la version 8.10.1.
  • Ajout de la prise en charge de l'écran d'accueil d'Android 12.
  • Ajout de la prise en charge de la taille des pages Android 16KB.
  • Ajout d'un exemple (QtJennyDemo) pour accéder aux API Android via des wrappers C++ produits par un générateur de code (QtJenny).
  • Changement d'Android 16 (API 36) en tant que version maximale de plate-forme prise en charge.
Qt Quick pour Android
  • Ajout de la prise en charge d'arguments multiples pour les signaux sous QtQuickView.
  • Ajout de la prise en charge de l'enregistrement des auditeurs de signaux avant le chargement complet de QML.
  • API Java publiques au format javadoc.

iOS

  • Ajout de la prise en charge de QPointingDevice pour l'Apple Pencil
  • Correction de la rotation pour l'Apple Pencil standard
  • Ajout de la prise en charge de la fonction de survol pour l'Apple Pencil 2e génération ou plus récent.
  • Les fenêtres qui optent pour la plage dynamique étendue (EDR) déclenchent désormais un événement d'exposition en cas de changement de luminosité de l'écran.
  • Les demandes de mise à jour sont désormais mises en pause lorsque l'application sort de l'état actif
  • QScreen signale désormais également les orientations d'écran inversées
  • RLIMIT_STACK reflète désormais la taille effective de la pile.
  • QImage::toCGImage() propage désormais l'espace colorimétrique de l'image

Plates-formes embarquées

Boot to Qt

Systèmes d'exploitation en temps réel

  • Le support des systèmes d'exploitation en temps réel n'est fourni que pour les versions LTS. Pour les versions non LTS, l'assistance est disponible exclusivement par l'intermédiaire des services professionnels.

Modules obsolètes dans Qt 6.10

Les modules suivants sont obsolètes. Il est fortement déconseillé de les utiliser dans un nouveau code.

Les modules Qt Charts et Qt DataVisualization sont obsolètes. Ils continuent à faire partie du logiciel sous licence et du projet Qt. Cependant, pour tout nouveau code, nous vous recommandons d'utiliser Qt Graphs. Consultez également la documentation sur {Qt Graphs Migration à partir de Qt Charts}{migration à partir de Qt Charts} et sur la migration à partir de Qt Data Visualization.

Pour plus d'informations sur le cycle de vie des modules dans Qt, voir QUIP-14.

Liste des modifications de l'API

Ces pages contiennent une vue d'ensemble des changements de l'API dans Qt 6.10 :

Problèmes connus

Pour des informations sur les problèmes connus dans Qt 6.10, voir le Qt Wiki.

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