Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Sumar Horas?? (https://www.clubdelphi.com/foros/showthread.php?t=5082)

YolandaM 07-11-2003 17:43:10

Sumar Horas??
 
Hola a todos, que tal?

Algo facilito para los senecas….


Necesito un código con algún control que el usuario inserte horas y minutos y haciendo (clic por ejemplo en un botón) se vayan sumando las horas y los minutos y mostrar los resultado en otro control ( que control me recomendáis ), teniendo en cuenta que cuando se sobrepasen los 60 segundos incremente lógicamente una hora más.

Como seria el codigo en cuestión ¿?

Gracias anticipadas.

delphi.com.ar 07-11-2003 17:51:52

Puedes utilizar el TDateTimePiker con la propiedad Kind en dtkTime.

Saludos!

Viet 07-11-2003 17:59:24

No me parece tan logico cambiar cuando llegue a los 60 seg una hora... pero ....bue.....

En principio necesitas un TTimer, con frecuencia 1000(= un seg).

y una variable global de tipo TTime, que la puedes inicializar con Time(la hora del sistema)

Luego en el onClick de un boton(inc hora), pones
Código:



  Hora := hora + strtotime('01:00:00');

en el evento onTimer pones
Código:



  Hora := hora + strtotime('00:00:01');

para resta es lo mismo pero con signo contrario.... y creo que con un tlabel estaria bien para mostrar el resultado


Suerte ;)

Ruben_Cu 08-11-2003 04:32:42

Hola Yolanda, como entiendo que quieres sumar horas y minutos y obtener el resultado con una apariencia aceptable, te propongo el uso de los SpinEdit uno para las hora y otro para los minutos y obtener el resultado de la suma en un edit, sin duda habrán varias formas de hacerlo pero te propongo que pruebes con esta:
Código:

implementation
var totalh,totalm:double;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var Hour, Min, Sec, MSec: Word;
begin
        totalh:=totalh+SpinEdit1.Value/24;
        totalm:=totalm+SpinEdit2.Value/1440;
        DecodeTime(totalh+totalm, Hour, Min, Sec, MSec);
        edit1.Text:=IntToStr(hour+trunc(totalh+totalm)*24)+':'+IntToStr(min);
end;

initialization
        totalh:=0;
        totalm:=0;
end.

Saludos y suerte

YolandaM 09-11-2003 09:21:46

Muchas gracias a todos...


La franja horaria es GMT +2. Ahora son las 23:52:16.

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