Ver Mensaje Individual
  #3  
Antiguo 09-04-2015
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 Fidel.
Cita:
... se me ocurre para no esperar que el operador Acepte el mensaje solo guardar un log ¿Como haria eso?
Sobre ese punto, podes hacer algo como esto:
Código Delphi [-]
function VerifyInput(str: string; var Value: Double): Boolean;
var
  logf: string;
begin
  str := StringReplace( str, ' ','', [rfReplaceAll] );
  Result := TryStrToFloat( str, Value );
  if not Result then
  begin
    logf := ExtractFilePath( Application.ExeName ) +
      FormatDateTime( 'yyyy-mm-dd',Date ) + 'E_ComPort.LOG';
    with TStringList.Create do
    try
      Value := 0;
      if FileExists( logf ) then
        LoadFromFile( logf );
      Add( Format( 'Valor: %s : %s',[str,
        FormatDateTime( 'dd/mm/yyyy - hh:mm:ss',Now )] ) );
      SaveToFile( logf );
    finally
      Free;
    end;
  end;
end;

Llamada:
Código Delphi [-]
...
var
  s : string;
  v: Double;
begin
  s := ' 0.123 456789';
  if VerifyInput( s, v ) then
  begin
     // En v hay un valor correcto, continuar
     ...


Saludos
__________________
Daniel Didriksen

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