In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

SharedModule y Timer

Foro de Xailer profesional en español
Responder
ddupre
Mensajes: 329
Registrado: Lun Nov 12, 2007 3:53 pm

SharedModule y Timer

Mensaje por ddupre »

Estimados,
Estoy haciendo pruebas con un TTimer que he puesto en un SharedModule con la idea de que a cada segundo se actualice el cText de varios Tlabel que tengo en varios formularios.
La idea es mostrar un "reloj" en diferentes lugares según el caso.


He intentado hacerlo de varias formas sin éxito, obteniendo errores de compilación o errores en tiempo de ejecución.

Lo más "cerca" que estuve fue poniendo este código en el evento OnTimer, el cual compila pero da error en ejecución, avisando que no existe la variable de instancia ctext.

METHOD Timer1Timer( oSender ) CLASS TShaMo1

TFormInicial():oHora:cText := Time()

RETURN Nil

Agradezco desde ya cualquier ayuda.

Saludos
Daniel
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9250
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Re: SharedModule y Timer

Mensaje por ignacio »

Buenos días,

Le recomiendo que sencillamente cree un timer en cada formulario y ponga el intervalo del mismo en 10.000. Es decir, evaluación: una vez por segundo. Le aseguro que no merece la pena tener un timer único para todo y le explico el porqué:
  • Los timers siempre dependen de un formulario o ventana y aunque se pueden crear sobre ventanas invisibles, ello no hace más que complicar aún más todo, por lo tanto, cuando de destruye la ventana, también se destruye su timer asociado. Podría poner el timer únicamente en la ventana principal de su aplicación y desde el método que recoge el evento de ONTIMER comprobar si están activos los formularios hijos y en dicho caso actualizar también los objetos TLabel que muestran la hora.
  • El consumo de recursos que tiene un timer que se dispara cada segundo es realmente inapreciable.
  • Por simplicidad de código
Un saludo
Ignacio Ortiz de Zúñiga
[Equipo de Xailer / Xailer team]
https://www.xailer.com
ddupre
Mensajes: 329
Registrado: Lun Nov 12, 2007 3:53 pm

Re: SharedModule y Timer

Mensaje por ddupre »

Buen día Ignacio,
Muchas gracias por la aclaración.

Un Saludo
Daniel
Responder