Como Somar valor convertido em moeda no edit
Estou com uma grande dúvida, gostaria de saber se poderiam me ajudar.
tenho um formulário que contem 3 edit, 2 para serem somados e 1 para receber o valor calculado, mas os valores que eu quero que calcule sao valores convertidos em moeda com o seguinte comando:
Edit1.text:=format(´¬m´,[strtofloat(Edit1.text)]); //no evendo (OnExit) do edit
quando eu clicko para somar ele da um erro dizendo: ´... R$ 10,00´ it´s not a valid floating point value´
alguem pode me ajudar?
agradeço desde já.
tenho um formulário que contem 3 edit, 2 para serem somados e 1 para receber o valor calculado, mas os valores que eu quero que calcule sao valores convertidos em moeda com o seguinte comando:
Edit1.text:=format(´¬m´,[strtofloat(Edit1.text)]); //no evendo (OnExit) do edit
quando eu clicko para somar ele da um erro dizendo: ´... R$ 10,00´ it´s not a valid floating point value´
alguem pode me ajudar?
agradeço desde já.
Snake_300kbps
Curtidas 0
Respostas
Antseralves
31/05/2005
Veja no WINDOWS/Painel De Controle/Configurações regionais,
como está configurado a opção de ponto decimal. Se estiver como
´.´ (ponto) então vai dar erro. Deve-se configurar para ´,´(vírgula).
AntSer
=====
como está configurado a opção de ponto decimal. Se estiver como
´.´ (ponto) então vai dar erro. Deve-se configurar para ´,´(vírgula).
AntSer
=====
GOSTEI 0
Marco Salles
31/05/2005
Acho que este problema é Classico , vito que o Conteudo Do Edits a serem somados , tem caracters
Voce deve eliminar os caracteres Tipo esta função abaixo
Talves isto lhe sirva
quando eu clicko para somar ele da um erro dizendo: ´... R$ 10,00´ it´s not a valid floating point value´
Voce deve eliminar os caracteres Tipo esta função abaixo
function RetornaValor(texto:String):Real; var i:integer; TextoAux:String; begin i:=1; while i<= Length(Texto) do begin if (texto[i] in [´0´..´9´])or(Texto[i]=DecimalSeparator) Then textoAux:=TextoAux+Texto[i]; i:=i+1; end; result:=strtoFloat(TextoAux); end;
procedure TForm1.Button1Click(Sender: TObject); var a,b,c:Real; begin a:=RetornaValor(Edit1.Text); b:=RetornaValor(Edit2.Text); c:=a+b; Edit3.text:=format(´¬m´,[c]); //no evendo (OnExit) do edit end;
Talves isto lhe sirva
GOSTEI 0
Snake_300kbps
31/05/2005
vlw galera, a dica funcionou
GOSTEI 0