Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-07-2015
adripugliesso adripugliesso is offline
Miembro
NULL
 
Registrado: jul 2015
Posts: 49
Poder: 0
adripugliesso Va por buen camino
Form Principal en Segundo Plano

Tengo una aplicación la cual contiene un Form Principal con un timer que esta actualizando datos desde la base continuamente y a través de diferentes botones llamo otros form en modo Showmodal.

Lo que necesito para frenar la transferencia de datos innecesaria es que mientras el form principal este en segundo plano y sin el control el timer se detenga y cuando retome el control el timer se vuelva a activar, alguien sabe que evento del form tengo que usar??
Responder Con Cita
  #2  
Antiguo 29-07-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Mete un componente TApplicationEvents y habilita/deshabilita el Timer en el OnModalBegin/OnModalEnd
Responder Con Cita
  #3  
Antiguo 29-07-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola adripugliesso.

Para agregar otra opción, tambíen podrías hacer:
Código Delphi [-]
...
type
  TMainForm = class(TForm)
  ...
  private
    procedure WmFormActivate(var Msg:TMessage); message WM_ACTIVATE;
  ...

implementation

procedure TMainForm.WmFormActivate(var Msg: TMessage);
begin
  Tu_Timer.Enabled := Msg.WParam = WA_ACTIVE;
  inherited;
end;

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #4  
Antiguo 29-07-2015
adripugliesso adripugliesso is offline
Miembro
NULL
 
Registrado: jul 2015
Posts: 49
Poder: 0
adripugliesso Va por buen camino
Gracias por el aporte..
Responder Con Cita
  #5  
Antiguo 30-07-2015
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
El form tiene ya un evento OnActivate y OnDeactivate:
- OnActivate ocurre cuando recibe el foco, es decir, su barra de título se ilumina.
- OnDeactivate es justo lo contrario, cuando otra ventana de tu aplicación o de Windows, toma el foco, ahí es el momento de desactivar el timer .

Lo volverías a activar en el OnActivate.

Si metes un TApplicationEvents, también tiene el evento OnIdle, que se ejecuta solo cuando el usuario no interactúa con tu programa, y además tu programa no está haciendo nada. Útil para hacer chequeos y poner "tienes 3 mensajes pendientes" o lo que sea.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Tarea en segundo plano Fossy Desarrollo en Delphi para Android 11 02-10-2014 11:42:58
Query segundo plano ramflores Conexión con bases de datos 4 13-09-2014 11:41:30
Aplicación en segundo plano Fossy Desarrollo en Delphi para Android 1 27-01-2014 02:27:52
no me ejecuta la animación el TJGIFAnimator al cargarlo en un Form en segundo plano paul170185 Varios 0 27-01-2011 01:03:52
Saber si un form está activo si la aplicación se encuentra en segundo plano pjmedina Varios 2 09-01-2008 15:01:02


La franja horaria es GMT +2. Ahora son las 22:15:18.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi