Ver Mensaje Individual
  #4  
Antiguo 17-02-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Reputación: 25
Delphius Va camino a la fama
Hola lord shadow,

Como te han indicado, se trata de un error de comas.
¿Por casualidad estás ingresando 1.0 o 1,0 (es un ejemplo)?

Te explico: cuando tu realizas la llamada a StrToFloat, Delphi obtiene el separador decimal que esté establecido en la configuración del sistema.

Tu problema tiene dos soluciones:
1. Cambiar el punto por la coma o la coma por el punto (según sea el caso) cuando escribes en el Edit. O bien,
2. Cambiar en tu sistema el separador decimal por el que te convenga. Para este caso:

en el OnCreate de tu form debes hacer:

Código Delphi [-]
DecimalSeparator = ','; // o punto... según sea el caso.

Estas dos soluciones son mutuamente excluyentes. Es decir que si optas por la 1, no apliques también la 2 (y vicerversa).

Podrías considerar soluciones alternativas, como por ejemplo: si ingresa coma o punto que rechaze ese caracter. En este caso, un ejemplo sería emplear el evento KeyPress:

Código Delphi [-]
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  if Key = ','
     then begin
            ShowMessage('No se permite coma. Use el punto');
            Key := #0;
            // El símbolo #0 representa el caracter vacio
            // es necesario cambiar el valor a Key porque sino en el edit
            // va a aparecer!
          end;
end;

Sabiendo que eres iniciado, recomiendo que elijas la 1 o una alternativa. Porque si tu profesor vee que empleas DecimalSeparator sospechará un poco.

Como dice ixMike, lee la guia de estilo. Recomendamos su lectura a todos los miembros nuevos.

Sería oportuno que nos expliques como deseas proseguir ya que se pueden formular diversas alternativas que solucionan tu problema.

Te recuerdo que cuando tengas problemas y desees consultarnos, que aportes más detalles sobre el asunto. En lo posible el código que empleas. De esta manera podemos ofrecerte ayuda de la mejor manera y no estar adivinando.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]

Última edición por Delphius fecha: 17-02-2008 a las 07:59:18.
Responder Con Cita