Fórum Converter tempo em minutos #435984
02/03/2013
0
Tenho esse campo:
Tempo, Formato: 00:00
Como faço pra pegar sempre os minutos deste campo ?
00:10 = 10min
01:00 = 60min
02:00 = 120min ...
Grato.
Vander Carlos
Curtir tópico
+ 0Posts
02/03/2013
William
- Primeiro fragmento o tempo (hora, minuto, segundo e milisegundos) nesse caso só usei hora e minuto.
- E depois converto em minutos as horas e somo aos minutos já existentes.
// Função para conversão
function TForm2.HoraToMinute(Time: TTime): Integer;
var
hora, minuto, segundo, miliseg: Word;
begin
DecodeTime(Time, hora, minuto, segundo, miliseg);
Result := ((hora * 60) + minuto);
end;
OBS.: Esse tipo de função existe em vários sites na net, é normal esse tipo de necessidade.
Qualquer dúvida posta aí ....
Gostei + 0
04/03/2013
Vander Carlos
Só mais uma coisa.
Quando eu calculo o valor e entro no Campo do valor, campo fica em branco. Estou trabalhando com os componentes da paleta DataControls, como faço pra ele ficar com o valor ? O cliente quer a opção de mudar manualmente, sem precisar desse calculo.
Abraços.
Gostei + 0
04/03/2013
William
hora := time;
ClientDataSet.FieldByName('seu_campo').value := HoraToTime(hora);
Estou supondo q vc esteja usando um ClientDataSet, você coloca o nome do seu campo ('seu_campo') para atribuir o retorno da função HoraToTime().
Gostei + 0
04/03/2013
Vander Carlos
Quando calculo o valor faço a atribuição assim:
edtValor.Text:= FloatToStr(total);
Gostei + 0
04/03/2013
William
Quando calculo o valor faço a atribuição assim:
edtValor.Text:= FloatToStr(total);
Se vc está atribuindo o retorno da função, então tem q passar de integer para string:
edtValor.Text:= IntToStr(total);
Atribuindo o valor para o edit não está ficando visível para o usuário editar?
Gostei + 0
04/03/2013
Vander Carlos
Quando eu tento alterar o valor, assim que entro no DBEdit o campo fica em branco.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)