Sur cette page

Qt WebChannel

Qt WebChannel permet une communication d'égal à égal entre un serveur (application QML/C++) et un client (application HTML/JavaScript ou QML). Il est pris en charge dès le départ par Qt WebEngine. En outre, il peut fonctionner sur tous les navigateurs qui prennent en charge les WebSockets, ce qui permet aux clients Qt WebChannel de fonctionner dans n'importe quel environnement JavaScript (y compris QML). Cela nécessite la mise en œuvre d'un transport personnalisé basé sur Qt WebSockets.

Le module fournit une bibliothèque JavaScript pour une intégration transparente des applications C++ et QML avec les clients HTML/JavaScript et QML. Les clients doivent utiliser la bibliothèque JavaScript pour accéder aux QObjects sérialisés publiés par les applications hôtes.

Utilisation du module

API QML

Les types QML du module sont disponibles via l'importation QtWebChannel. Pour utiliser les types, ajoutez l'instruction d'importation suivante à votre fichier .qml :

import QtWebChannel

API C++

L'utilisation de l'API C++ d'un module Qt nécessite l'établissement d'un lien avec la bibliothèque du module, soit directement, soit par l'intermédiaire d'autres dépendances. Plusieurs outils de construction disposent d'un support dédié à cet effet, notamment CMake et qmake.

Construction avec CMake

Utilisez la commande find_package() pour localiser le composant de module nécessaire dans le paquetage Qt6:

find_package(Qt6 REQUIRED COMPONENTS WebChannel)
target_link_libraries(mytarget PRIVATE Qt6::WebChannel)

Pour plus de détails, voir l'aperçu de la construction avec CMake.

Construction avec qmake

Pour configurer le module afin qu'il soit construit avec qmake, ajoutez le module comme valeur de la variable QT dans le fichier .pro du projet :

QT += webchannel

Exemples

Référence

Licences

Qt WebChannel est disponible sous licence commerciale auprès de The Qt Company. En outre, elle est disponible sous des licences de logiciel libre. Ces licences de logiciel libre sont la GNU Lesser General Public License, version 3, ou la GNU General Public License, version 2. Voir Qt Licensing pour plus de détails.

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