Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   De una captura de fecha, hacer que avance con TTimer (https://www.clubdelphi.com/foros/showthread.php?t=83189)

Cristhor1982 20-05-2013 22:14:00

De una captura de fecha, hacer que avance con TTimer
 
Amigos...les cuento, desde mi BD, obtengo el campo (Hora), lo dejo en un Label.Caption...Algo ASI

Código Delphi [-]
 label2.Caption := timetostr(hora)

Ahora bien, quiero que el timer lo haga avanzar desde la hora capturada...se entiende?..Gracias

Saludos

:)

Los Hilos que encontré no me ayudaron mucho

:S

ecfisa 20-05-2013 22:46:08

Cita:

Empezado por Cristhor1982 (Mensaje 460807)
Ahora bien, quiero que el timer lo haga avanzar desde la hora capturada...se entiende?.

Hola.

Bueno, espero que si... :rolleyes: :)

Ejemplo:
Código Delphi [-]
implementation  

uses DateUtils;

var
  CampoHora : TTime;

procedure TForm1.FormCreate(Sender: TObject);
begin
  CampoHora := Time;
// En tu caso sería: CampoHora := TuDataSet.FieldByName('FECHA').AsDateTime; 
  Label1.Caption := FormatDateTime('hh:mm:ss', CampoHora);
  Timer1.Interval := 1000;
  Timer1.Enabled := True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  CampoHora := IncSecond(CampoHora);
  Label1.Caption := FormatDateTime('hh:mm:ss', CampoHora);
end;

Saludos. :)

Cristhor1982 20-05-2013 22:55:00

Ecfisa

Muchas Gracias...!!!, me funciono excelente....Gracias...Ahm, se salta los segundos, pero ahi vere, lo que muestra es esto

16:31:00...16:31:02...16:31:03 y asi sucesivamente

Pero le echare un vistazo GRACIAS


Saludos

Cristhor1982 22-05-2013 17:51:52

Hola, ECFISA

Te cuento que no logro dar con el porque de el adelanto de un segundo mas ...me podrías dar una idea porfa. Como avanzaba el doble lo unico que se me ocurrio para salir del paso es aumentar el interval a 2000 desde que captura, y no mostrar los segundos :S



Saludos

Cita:

Empezado por ecfisa (Mensaje 460813)
Hola.

Bueno, espero que si... :rolleyes: :)

Ejemplo:
Código Delphi [-]
implementation  

uses DateUtils;

var
  CampoHora : TTime;

procedure TForm1.FormCreate(Sender: TObject);
begin
  CampoHora := Time;
// En tu caso sería: CampoHora := TuDataSet.FieldByName('FECHA').AsDateTime; 
  Label1.Caption := FormatDateTime('hh:mm:ss', CampoHora);
  Timer1.Interval := 1000;
  Timer1.Enabled := True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  CampoHora := IncSecond(CampoHora);
  Label1.Caption := FormatDateTime('hh:mm:ss', CampoHora);
end;

Saludos. :)


nlsgarcia 22-05-2013 19:25:48

Cristhor1982,

Cita:

Empezado por Cristhor1982
...se salta los segundos...no logro dar con el porque de el adelanto de un segundo mas...

Revisa este código:
Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, DateUtils;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Timer1: TTimer;
    ListBox1: TListBox;
    procedure FormCreate(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  Tiempo : TTime;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  Tiempo := Time;
  ListBox1.Items.Add(FormatDateTime('hh:mm:ss', Tiempo));
  Timer1.Interval := 500;
  Timer1.Enabled := True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Tiempo := IncSecond(Tiempo);
  ListBox1.Items.Add(FormatDateTime('hh:mm:ss', Tiempo));
end;

end.
El código anterior basado en el ejemplo del Msg #2 muestran los segundos de forma consecutiva en un control TListBox al disminuir el intervalo de tiempo en el control Timer de 1000 ms a 500 ms, en tu caso particular puedes ajustarlo según tus requerimientos.

Espero sea útil :)

Nelson.


La franja horaria es GMT +2. Ahora son las 02:18:30.

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