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

Tema Cerrado
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-09-2003
CFPA86 CFPA86 is offline
Miembro
 
Registrado: sep 2003
Ubicación: Medellin (Colombia)
Posts: 119
Poder: 21
CFPA86 Va por buen camino
Demora al cambiar la hora

Hola foristas.
Tengo el siguiente codigo.

var
FecDada : TdateTime;
// HorDada : TSystemTime;
HorDada : TDateTime;
begin
FecDada := StrToDate(Efecha.Text);
HorDada := StrToTime(Ehora.Text);
ProCamFec(FecDada, HorDada);
end;

Procedure ProCamFec(Fecha: TDateTime; Hor : TDateTime);
var
FecSys: TSystemTime;
nA, nM, nD, nHH, nMM, nSS, nMS : Word;
begin
DecodeDate(Fecha, nA, nM, nD);
GetLocalTime(FecSys);
FecSys.wYear := nA;
FecSys.wMonth := nM;
FecSys.wDay := nD;
DecodeTime(Hor, nHH, nMM, nSS, nMs);
FecSys.wHour := nHH;
FecSys.wMinute := nMM;
FecSys.wSecond := nSS;
FecSys.wMilliseconds := nMS;
SetLocalTime(FecSys);
end;

El cambia la fecha inmediatamente pero en la hora se tarda Aprox 45 Seg. en cambiarla o mostrarla en la barra de tareas, alguien sabe decirme el pporque de esto, me gustaria que lo hiciera como la fecha en forma inmediata.

Alguna sugerencia si es el caso se los agradezco.
__________________
Siempre hay un primer momento para todo.
  #2  
Antiguo 26-09-2003
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Prueba a ver si te sirve añadir la siguiente línea despues de SetLocalTime:

SendMessage(HWND_TOPMOST, WM_TIMECHANGE, 0, 0);

Se supone que este mensaje avisa a todas las ventanas de aplicación que cambió la fecha/hora, y esto incluye el reloj de la barra de tareas.

// Saludos
  #3  
Antiguo 26-09-2003
CFPA86 CFPA86 is offline
Miembro
 
Registrado: sep 2003
Ubicación: Medellin (Colombia)
Posts: 119
Poder: 21
CFPA86 Va por buen camino
Aun no me funciona se tarda mucho al cambirse, he notado que inmediatamente la actuaaliza en el ambiente D.O.S mas no en la barra de tareas..
__________________
Siempre hay un primer momento para todo.
  #4  
Antiguo 26-09-2003
Viet Viet is offline
Miembro
 
Registrado: jul 2003
Ubicación: Argentina - Mar del Plata
Posts: 252
Poder: 21
Viet Va por buen camino
A mi me da la impresion que la hora que nos figura en la barra de tareas es solo una interface... esta te muestra la hora y se actualiza cadab 45 seg con la hora del sys...

Tal ves si despues de actualizar la hora le envias un mensaje de refresco impacte automaticamente.

Es solo una idea
__________________
Marín Ignacio Borthiry (Viet) - "El hombre arriesga su vida cada vez que elije y eso es lo que lo hace libre" ;)
  #5  
Antiguo 26-09-2003
hot1974 hot1974 is offline
Miembro
 
Registrado: jun 2003
Ubicación: Mexico D.F.
Posts: 31
Poder: 0
hot1974 Va por buen camino
Talking

Hola, si lo que quieres es que en tu aplicacion tenga la hora de tu sistema, creo tener la solucion.

a tu pantalla principal agrega una statusbar que esta en la paleta de win32.

al statusbar agregale unos statuspanels dando soble click sobre la statusbar , despues baja un componente timer de la paleta system y agrega el siguiente codigo en el timer.

procedure TMenu.Timer1Timer(Sender: TObject);
begin
StatusBar1.Panels[0].Text:=timetostr(time());
end;

y con eso eta solucionado tu problema, . Saludos
  #6  
Antiguo 26-09-2003
CFPA86 CFPA86 is offline
Miembro
 
Registrado: sep 2003
Ubicación: Medellin (Colombia)
Posts: 119
Poder: 21
CFPA86 Va por buen camino
hola foristas, este tema se puede dar por terminado, muchas gracias a todos.
__________________
Siempre hay un primer momento para todo.
Tema Cerrado



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


La franja horaria es GMT +2. Ahora son las 18:54:00.


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