somar horas ultrapassando 24 horas

Delphi

16/11/2019

Boa tarde preciso somar dois campos edit com horas em cada um e jogar em outro edit, so que essas horas vai ultrapassar 24 horas , alguem pode me ajudar estou fazendo assim , ate 24 ele soma normal,

exemplo edit1=12:00 edit2 34:00 e no edit3 tem que aparecer 46:00
segue codigo que estou fazendo

Var
Entrada, Saida: String;
Horas: TTime;
Begin
Entrada := edt1.Text;
Saida := edt2.Text;
Horas := StrToTime(Saida)+StrToTime(Entrada);
edt3.Text := (TimeToStr(Horas));
Wellington

Wellington

Curtidas 0

Respostas

Emerson Nascimento

Emerson Nascimento

16/11/2019

acho que só uma função pra este tipo de cálculo:
procedure TForm2.Button3Click(Sender: TObject);
  function SomaHoras(Hora1, Hora2: string): string;
  var
    resultado: string;
    minutos, horas: integer;
  begin
    minutos := strtointdef(copy(hora1,4,2),0)+strtointdef(copy(hora2,4,2),0);
    horas := strtointdef(copy(hora1,1,2),0)+strtointdef(copy(hora2,1,2),0);
    if minutos >= 60 then
    begin
      minutos := minutos - 60;
      inc(horas);
    end;
    result := FormatFloat('#00', horas)+':'+FormatFloat('00', minutos);
  end;
begin
  MaskEdit3.Text := SomaHoras(MaskEdit1.Text, MaskEdit2.Text);
end;
GOSTEI 0
POSTAR