Ver Mensaje Individual
  #10  
Antiguo 29-12-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Oscar.

Al igual que Cañones, no entiendo el resultado que esperas. Pero si en algún momento deseas almacenar como número real la cadena '1.540,65', al momento de la conversión, va a tener que tener el formato '1540.65' sí o sí. Ya que ese es el formato de representación interna que admite Delphi (y los lenguajes que conozco).
Como lo muestres es otro cantar... En el foro C++ Builder se trato un tema similar: Error de conversion.

Probá de este modo:
Código Delphi [-]
function CadenaAFlotante(Cad: string): Double;
var
  Sep: Char;
begin
  Sep:= DecimalSeparator;
  Delete(Cad, Pos('.', Cad), 1);
  Cad:= AnsiReplaceStr(Cad, ',', '.');
  DecimalSeparator:= '.';
  Result:= StrToFloat(Cad);
  DecimalSeparator:= Sep;
end;

Ejemplo de llamada:
Código Delphi [-]
...
var
  Valor: Double;
begin
  Valor:= CadenaAFlotante(Edit1.Text);
  ShowMessage(FloatToStr(Valor));
end;
Pero como te dije arriba no alcanzo a entender lo que buscas...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita