Subtrair minutos de uma determinada hora
Olá,
Como faço para subtrair minutos de uma determinada hora?
Luiz
Como faço para subtrair minutos de uma determinada hora?
Luiz
L_carlos
Curtidas 0
Respostas
Osocram
30/07/2009
IncMinute(myDate, -40);
Olá,
Como faço para subtrair minutos de uma determinada hora?
Luiz
GOSTEI 0
Danielrsanches
30/07/2009
se precisar ´extrair´ os minutos de determinada hora:
minuteof(Date);
declare DateUtils na cláusula uses ...
abraços !!!
minuteof(Date);
declare DateUtils na cláusula uses ...
abraços !!!
GOSTEI 0
L_carlos
30/07/2009
vlw osocram, sua dica funcionou.
Agora como faço para subtrair minutos por exempo qdo a hora for meia noite, como por exemplo subtrair 40 minutos de 00:10 (meia noite e 10 minutos), pois usando a sua dica o resultado é 00:30 (esse resultado errado só ocorre se tento diminuir minutos qdo a hora é meia noite).
Luiz
Agora como faço para subtrair minutos por exempo qdo a hora for meia noite, como por exemplo subtrair 40 minutos de 00:10 (meia noite e 10 minutos), pois usando a sua dica o resultado é 00:30 (esse resultado errado só ocorre se tento diminuir minutos qdo a hora é meia noite).
Luiz
GOSTEI 0
Marco Salles
30/07/2009
Tente ...
ps: Da para pensar em fazer para faixa de valoes minutos maiores que 60 segundos
ps é sempre bom e dar preferencia para fun~ções nativas , o problema
é que devemos conhecer suas limitações e nen sempre elas
fazemm exatamente o que queremos
_________________
<
´Não esqueça de deixar uma mensagem informando se as dicas deram certo, para que outros usuários com as mesmas dúvidas saibam como resolve-las´
Se DEUS Não Existe Então Vale Tudo
Código: function SubtrairMinutos(Hora:TTime;M:word):TTime; var mm:real; begin if M <= 60 tHEN begin mm:=M; mm:=(1/24)*(M/60); if mm>Hora Then Hora:= 1 - (mm - Hora) else Hora = Hora - mm result:=Hora; end else begin Showmesage(´Minutos Fora da especificação´); Gera Erro etc... end;
ps: Da para pensar em fazer para faixa de valoes minutos maiores que 60 segundos
ps é sempre bom e dar preferencia para fun~ções nativas , o problema
é que devemos conhecer suas limitações e nen sempre elas
fazemm exatamente o que queremos
_________________
<
´Não esqueça de deixar uma mensagem informando se as dicas deram certo, para que outros usuários com as mesmas dúvidas saibam como resolve-las´
Se DEUS Não Existe Então Vale Tudo
GOSTEI 0
L_carlos
30/07/2009
Olá Marco, desculpe a ignorancia, mas como uso a sua função por exemplo para subtrair 30 minutos de uma hora que está informada em um maskedit?
Luiz
Luiz
GOSTEI 0
Marco Salles
30/07/2009
Olá Marco, desculpe a ignorancia, mas como uso a sua função por exemplo para subtrair 30 minutos de uma hora que está informada em um maskedit?
é simples ..
var Hora:TTime; begin try Hora:=StrtoTime(SeuMaskEdit.Text); Hora:=SubtrairMinutos(Hora,30); showmessage(Timetostr(Hora)); except Showmessage(´Erro´); end; end;
GOSTEI 0
L_carlos
30/07/2009
Vlw Marco. Sua função resolveu o problema de subtrair minutos qdo a hora é meia noite.
Luiz
Luiz
GOSTEI 0
Marco Salles
30/07/2009
L_Carlos navegando por ai , achei algo interressante e mais simples que
pode ser estendido com mais facilidades para o Subtrair Minutos com valores
maiores do que 60
Acho que funciona Ate Minutos = 1440 (teste ai...)
Adaptei para a sua necessidade
Utilização
Tópico Original
http://www.activedelphi.com.br/forum/viewtopic.php?t=26814&highlight=horas&sid=f1e2f21f7dd389eceaf9d814b348daaa
hummmmmmmm... Interressante
pode ser estendido com mais facilidades para o Subtrair Minutos com valores
maiores do que 60
Acho que funciona Ate Minutos = 1440 (teste ai...)
Adaptei para a sua necessidade
function NovaSubtrairMinutos(Hora:TTime;M:word):TTime; begin result:=(StrToTime(´23:59:59´) - M/1440 + StrToTime(´00:00:01´) + Hora) end;
Utilização
procedure TForm1.Button1Click(Sender: TObject); var Hora,HoraAux:TTime; begin try HoraAux:=StrtoTime(MaskEdit1.Text); Hora:=NovaSubtrairMinutos(HoraAux,strtoint(edit1.text)); form1.caption:=Timetostr(Hora); except Showmessage(´Erro´); end;
Tópico Original
http://www.activedelphi.com.br/forum/viewtopic.php?t=26814&highlight=horas&sid=f1e2f21f7dd389eceaf9d814b348daaa
hummmmmmmm... Interressante
GOSTEI 0