Valores monetarios

03/04/2006

0

Olá.

Eu tenho um edit que chama EdtValor, que ele recebe o valor das taxas cobradas... no momento eu estou fazendo as validações da Seguinte maneira.



procedure TForm1.EdtValorKeyPress(Sender: TObject; var Key: Char); 
begin 
if not (key in [´0´..´9´,8])and(key <> DecimalSeparator) Then 
 key:=0; 
end;


procedure TForm1.EdtValorExit(Sender: TObject); 
begin 
try 
  if EdtValor.Text <> ´´ then 
    EdtValor.Text:=FormatFloat(´.00´,strtofloat(EdtValor.Text)); 
except 
  on econverterror do 
     begin 
       showmessage(´numero invalido´); 
       EdtValor.SetFocus; 
     end; 
end; 
end;



até ai conforme o usuario digita os numeros sem colocar a virgula e sai ele coloca uma ´,´ e dois zeros depois.... só que eu queria que alem de ele colocar isso ele verifica se o cara digito 4 numeros ai ele colocaria o ´.´ já para separar as milhares....

não sei se eu expliquei direito.

Ele preenche assim

Ex.: 1000,00

eu queria assim

EX.: 1.000,00

voces poderiam me ajudar?


Fernando_cunha

Fernando_cunha

Responder

Posts

03/04/2006

Paullsoftware

Mude a forma de converter de
EdtValor.Text:=FormatFloat(´#.00´,strtofloat(EdtValor.Text));

para:
EdtValor.Text:=FormatFloat(´,,0.00´,strtofloat(EdtValor.Text)); 
e acho que resolve :wink:


Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar