PDA

Ver la Versión Completa : Sumar Horas??


YolandaM
07-11-2003, 17:43:10
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

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

en el evento onTimer pones

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:
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...