Qt WebChannel Aplicación QML ChatClient
Un cliente QML que se comunica a través de un WebSocket con un servidor QWebChannel.

ChatClient QML proporciona un sencillo cliente QWebChannel implementado mediante JavaScript y QML.
Implementación de un cliente de canal web en QML
Este ejemplo muestra cómo se pueden utilizar los elementos básicos con la implementación JavaScript del cliente QWebChannel, como la conexión a señales (newMessage), la llamada a ranuras (sendMessage) y la gestión de cambios de propiedades (userList).
El cliente inicializa una conexión WebSocket al servidor de chat en el puerto 12345 en localhost. Cuando el WebSocket se abre, se crea un objeto WebChannel, tomando el WebSocket como primer argumento y una función callback como segundo argumento. Cuando se llama al callback, el cliente recibe un objeto llamado chatserver, que contiene todas las señales, ranuras y propiedades necesarias para implementar un cliente de chat. La función callback conecta userListChanged, newMessage, y keepAlive en el objeto chatserver con funciones separadas que manejan esas señales, y luego llama a show en loginWindow.
El Window con loginWindow como id maneja el procedimiento de inicio de sesión. Contiene un LoginForm definido en LoginForm.ui.qml. Cuando se pulsa el botón, se llama a la función login en el objeto chatserver con el nombre de inicio de sesión y una función de devolución de llamada como argumentos. Esta función callback maneja tanto si el login tiene éxito como si falla.
Después de iniciar sesión, el cliente utiliza un MainForm, definido en MainForm.ui.qml, con mainUi como id, para enviar mensajes utilizando la ranura sendMessage, leer mensajes utilizando la señal newMessage, y para ver los nombres de todos los usuarios conectados utilizando la propiedad userList. Además, el cliente responde a la señal keepAlive del servidor para que éste detecte los clientes desconectados y los elimine de la propiedad userList.
El cliente es capaz de trabajar con el Qt WebChannel ChatServer Ejemplo.
Ver también Qt WebChannel ChatServer Example y Qt WebChannel ChatClient HTML Example.
© 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.