Ver Mensaje Individual
  #5  
Antiguo 23-02-2013
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 Kiranov.

Cuando mencionabas:
Cita:
Empezado por Kiranov Ver Mensaje
... pero a la hora de hacer una entrada con una mascara, por ejemplo $99999.99, si ingreso $999__.99 me da error de formato.
Tal vez te referías a no obtener errores de conversión mediante StrToFloat por ejemplo. Si fuera así, tal vez te serviría procesar la cadena de este modo:
Código Delphi [-]
procedure TForm1.FormCreate(Sender: TObject);
begin
  MaskEdit1.EditMask := '$#9999' + DecimalSeparator + '99';
end;

function TrimSpc(Text: string): string;
var
  i: Integer;
begin
  for i := 1 to Length(Text) do
    if Text[i] in ['0'..'9', DecimalSeparator,'-'] then
      Result := Result + Text[i]
end;

Llamada ejemplo:
Código Delphi [-]
procedure TForm1.MaskEdit1Exit(Sender: TObject);
var
  d: Double;
begin
  d := StrToFloat(TrimSpc(MaskEdit1.Text));
  ShowMessage(FloatToStr(d));
end;

Saludos.
__________________
Daniel Didriksen

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