Ver Mensaje Individual
  #14  
Antiguo 23-02-2012
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Reputación: 21
Chris Va por buen camino
Cita:
Empezado por lmpadron Ver Mensaje
Román, como dices, algo así no debería hacerse y lo de respetar la configuración del usuario esta más que claro sin embargo los usuarios que van a usar este software deben insertar aproximadamente 3000 planillas en solo 8 horas por ende han solicitado que sea de la forma mas cómoda posible, lanzar un mensaje de error los haría primeramente tener que parar de insertar los datos además estarían forzados a usar la coma del teclado que es mucho mas incomoda cuando insertamos números dado que generalmente lo hacemos desde el área numérica del teclado (en caso de que esa sea su configuración).
Lo de mostrar un MessageBox ya lo hemos discutido. Ahora, con respecto a la comodidad del usuario y el punto que toca Román -súper importante-. Ve, asignarle directamente un valor a las variables como DecimalSeparator no es recomendable. Para hacer las conversiones, a cómo ha dicho Román, basta con un StrToFloat. Pero quieres que el divisor del punto flotante sea con . -punto-. Puedes hacer esto con StrToFloat se forma muy sencilla. Fíjate (código en Delphi):

Código Delphi [-]
var
    FS: TFormatSettings;
    NumberAsFloat: Double;
begin
    FS.DecimalSeparator := '.'; // usar . para punto decimal
    
    try
        NumberAsFloat := StrToFloat(Edit1.Text, FS); // el ultimo parametro
                                                     // es el que hace la magia
    except on EValueError do
        ShowBalloonTip ...
    end;
    
    ..
end;

¿Viste que fácil y claro el código?

Saludos!
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita