Array
(
)

Float to Time

Kroki
   - 28 fev 2006

Alguem sabe o método pra transformar um valor float em time?
É para calcular uma taxa,vc digita um valor(2,00) e se tem o tempo,no caso 1:00;
Estou usando +- assim;
edit11.text:=formatFloat(´0.00´,valor);,obtenho os ´reais´ certo agora como poderia tranformar em um tempo equivalente(2 reais=Uma hora)?


Marco Salles
   - 28 fev 2006

o Tipo Ttime no delphi ja é um Float.. ele é um numero de ponto flutuante
Veja por exemplo que a instrução
Showmessage(floattostr(time)); :wink:
Roda sem problemas .. Alem de compilar , ainda retorna uma mensagem contendo un numero , que como eu acabei de dizer é un numero de ponto flutuante
Este numero ja é devidamente (nos bastitores do delphi) , realizado quase da mesma maneira como a gente aprende no colegial a transformar uo formato HMS em decimal e vice versa
Eu digo Quase da mesma maneira , porque tem algumas pequenas sutilizas , mas são facies de entender

Enfim , na prática acho que o que voce quer é isso:

#Código

procedure TForm1.Button1Click(Sender: TObject);
var
valorHora:Currency;
TempoUsado:TTime;
ValorCobrado:real;
begin
try
Showmessage(floattostr(time));
valorHora:=strtofloat(edtValor.text);
TempoUsado:=strtoTime(editTime.text);
ValorcOBRADO:=ValorHora*(TempoUsado*24);
editCobrado.Text:=formatFloat(´0.00´,valorCobrado);
except
on econverterror do
begin
beep;
showmessage(´Valores invalidos´);
end;
end;
end;



Kroki
   - 28 fev 2006

Valeu muito cara,provavelmente ja sabe pra que eu quero isso...
To ´atualizando´ um programa de LanHouse.


Kroki
   - 28 fev 2006

Marcos,essa funçao vou utilizar tambem,mas nao consegui fazer ao contrário.
Preciso saber pelo valor quanto tempo se tem,tipo,sabendo-se que a hora custa 2,00 quando digitasse em um Edit o valor digamos 1,00 real apareceria em outro Edit 0:30,pode me ajudar?