Fórum subtraindo hora, minuto, segundo e milésimo de segundos ? #349603
25/11/2007
0
este exemplo aki fás a contagem dos milésimos..
1 2 3 4 5 | procedure TForm2.Timer1Timer(Sender: TObject); begin Edit1.Text := FormatDateTime(´HH:MM:SS:ZZZ´, TimeOld - NOW); end; |
e este fás o cáculos sem os milésimos de segundo:
1 2 3 4 5 6 7 8 9 10 | var TempoFinal, TempoInicial, Tempo : TTime; begin TempoInicial:=StrToTime(Edit2.Text); Tempo:=StrToTime(Edit3.Text); TempoFinal:= TempoInicial- Tempo; label9.Caption:= TimeToStr(TempoFinal); end; |
quando tem colocar o formato de milésimos de segunda dando um erro que é incompatível.
alguém sabe algo ? vlw t+

Gigatel
Curtir tópico
+ 0Posts
26/11/2007
Gigatel
Gostei + 0
26/11/2007
Edilcimar
Gostei + 0
26/11/2007
Gigatel
rapás, já procurei na internet aki no fórum más não achei(pelo menos com as palavras chaves que usei..)
más vlw a atenção..
Gostei + 0
26/11/2007
Edilcimar
http://forum.devmedia.com.br/viewtopic.php?t=64098&highlight=decimo
Gostei + 0
26/11/2007
Gigatel
olha o código
1 2 3 4 5 6 7 | TempoMeio := 86400 * TransformaHoraEmPontoFlutuante(MaskEdit4.Text); End; If Tempo2 > 0 then Begin VelocidadeMeio := (Sensor1 / (Tempo2 - TempoMeio)) * 3.6; MaskEdit7.Text := FloatToStrF(VelocidadeMeio, ffFixed,5,2); End; |
este :
TempoMeio
TransformaHoraEmPontoFlutuante
VelocidadeMeio
são variáveis ? de que tipo?
vlw.
Gostei + 0
26/11/2007
Gigatel
00:00:01:000
00:00:05:026
00:00:06:563
a ssim por diante
eu quero colocar isso num char para poder mostrar um gráfico de desempenho, só que dá um erro quando tento colocar a informação lá.. e estou com uma dúdida no loop para mandar todos o registros para este char.. ou seja estou ferrado..hehehehemás tenho que ir passo a passo..
vlw. aguardo noticias..hehehe
Gostei + 0
26/11/2007
Massuda
Gostei + 0
26/11/2007
Gigatel
00:00:01:000 = 000001000
00:00:05:026 = 000005026
00:00:06:563 = 000006563
assim o tchart compreende as informações se erro..será que dá certo ?
Gostei + 0
26/11/2007
Edilcimar
Gostei + 0
26/11/2007
Edilcimar
Function TransformaHoraEmPontoFlutuante(Texto : string) : Real;
Function TransformarPontoFlutuanteTexto(PontoFlutuante : Real; var Hh,Mm,Ss,Ms : Word):String;
Function TransformaHoraEmPontoFlutuante(Texto : string) : Real;
Var
Hh , Mm, Ss, Ms : Word;
Fator : Integer;
begin
Fator := 36000000;
Hh := 0;
Mm := StrToInt(Copy(Texto,1,2));
Ss := StrToInt(Copy(Texto,4,2));
Ms := StrToInt(Copy(Texto,7,4));
Result := ((Hh*Fator)+(Mm*(Fator/60))+(Ss*(Fator/(60*60)))+Ms)/(24*Fator);
end;
Function TransformarPontoFlutuanteTexto(PontoFlutuante : Real; var Hh,Mm,Ss,Ms : Word):String;
Var
Resto, Fator, Fracao : Integer;
T1, T2, T3 : String;
begin
Fator:=864000000;
Fracao := Round(PontoFlutuante * Fator);
Fator := Fator div 24;
Hh := Fracao div Fator;
Resto := Fracao mod Fator;
Fator := Fator div 60;
Mm :=Resto div fator;
Resto := Resto mod fator;
Fator := Fator div 60;
Ss := Resto div fator;
Ms:= Resto mod fator;
T1 := ´0´+IntToStr(Mm);
T1 := Copy(T1,Length(T1)-1,2);
T2 := ´0´+IntToStr(Ss);
T2 := Copy(T2,Length(T2)-1,2);
T3 := ´000´+IntToStr(Ms);
T3 := Copy(T3,Length(T3)-3,4);
Result := T1+´:´+T2+´:´+T3;
end;
Gostei + 0
26/11/2007
Gigatel
vlw mesmo..foi de uma grande ajuda.
Gostei + 0
26/11/2007
Gigatel
Gostei + 0
27/11/2007
Edilcimar
hh:mm:ss:decimomilesimosegundo, este último com 4 casas. Cada maskedit é um dos tempos de cronometragem
Gostei + 0
27/11/2007
Gigatel
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)