Aplicación cliente de tiempo
Un cliente que mantiene una réplica de un objeto de tiempo de un servidor y muestra la hora en un reloj.
La Aplicación Cliente de Tiempo abre una ventana azul con un mensaje. Al hacer clic una vez, muestra un reloj. Cuando hace clic de nuevo, dos relojes, y luego se repite. El reloj está definido en Clock.qml y utiliza el tipo Time QML, implementado en C++, para ajustar la hora del reloj utilizando la hora del servidor.

Antes de Ejecutar la Aplicación Cliente de Tiempo
Para ejecutar este ejemplo, la Aplicación Servidor de Tiempo debe estar ya ejecutándose en el mismo host que esta aplicación. Configura un servidor de registro y aloja una instancia de una subclase de la clase MinuteTimerSimpleSource. Si no se está ejecutando, aparecerá un mensaje de error en la ventana.
Definición de objetos remotos mediante un fichero REP
El fichero REP "timemodel.rep" en el directorio padre de esta aplicación se utiliza para generar los ficheros de cabecera utilizados por ambas aplicaciones. Para esta aplicación, el fichero generado "rep_timemodel_replica.h" define MinuteTimerReplica, la réplica de MinuteTimer, y otras clases relacionadas.
La clase TimeModel
La clase TimeModel en plugin.h y plugin.cpp implementa el tipo QML Time. Se pone en contacto con el servidor de registro en localhost utilizando la URL "local:registry", adquiere una réplica, MinuteTimerReplica, y se conecta a sus señales. Las propiedades se actualizan automáticamente.
Los tipos QML
El QML definido en "Clock.qml" dibuja un reloj utilizando las propiedades horas y minutos.
La aplicación abre una ventana con el contenido "plugins.qml". Cambia entre mostrar diferentes contenidos usando un Loader, ciclando por cada click entre "plugins0.qml", "plugins1.qml", y "plugins2.qml".
Mientras que "plugins0.qml" muestra una pantalla azul con un mensaje, en "plugins1.qml" se utiliza el tipo de QML personalizado Clock, con las propiedades de horas y minutos ajustadas a las propiedades de horas y minutos de Time. El archivo "plugins2.qml" es similar pero muestra dos relojes.
import QtRemoteObjects import QtQuick import TimeExample // import types from the plugin Rectangle { width: 200 height: 400 color: "blue" Clock { id: clock1 anchors.top: parent.top Time { // this class is defined in C++ id: time node: node } Node { id: node registryUrl: "local:registry" } hours: time.hour minutes: time.minute valid: time.state == Time.Valid } }
Véase también Aplicación de servidor horario.
© 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.