Validar dados introduzidos numa InputBox
Oi pessoal,
Queria validar os dados introduzidos na InputBox, mas como estou fazendo no exemplo seguinte só aceita integer. Que devo alterar para aceitar float ?
CODIGO:
repeat
InputString := InputBox(´Quantidade ´, ´Valor:´,´.´);
val(InputString, I, Code);
if Code <> 0 then
bsSkinMessage1.MessageDlg2 (´Tem que ser numero.´, ´Atenção.´, mtInformation, [mbOk], 0);
until (Code = 0);
Agradeci a ajuda :wink:
Queria validar os dados introduzidos na InputBox, mas como estou fazendo no exemplo seguinte só aceita integer. Que devo alterar para aceitar float ?
CODIGO:
repeat
InputString := InputBox(´Quantidade ´, ´Valor:´,´.´);
val(InputString, I, Code);
if Code <> 0 then
bsSkinMessage1.MessageDlg2 (´Tem que ser numero.´, ´Atenção.´, mtInformation, [mbOk], 0);
until (Code = 0);
Agradeci a ajuda :wink:
Nilpedro
Curtidas 0
Respostas
Caninha51
03/01/2006
var InputString: String; Code: Double; IsFloat: Boolean; begin repeat InputString := InputBox(´Quantidade ´, ´Valor:´,´.´); IsFloat := TryStrToFloat(InputString,Code); if not IsFloat then bsSkinMessage1.MessageDlg2 (´Tem que ser numero.´, ´Atenção.´, mtInformation, [mbOk], 0); until IsFloat; end;
GOSTEI 0
Nilpedro
03/01/2006
Mas a função TryStrToFloat só existe no Delphi 6, e eu estou trabalhar Delphi 5
GOSTEI 0
Nilpedro
03/01/2006
Consegui
No caso Delphi 5 Fiz assim:
repeat
InputString := InputBox(´Quantidade ´, ´Valor:´,´´);
IsFloat:=true;
try
Code := StrToFloat(InputString);
except
on EConvertError do IsFloat:=false;
end;
if not IsFloat then
bsSkinMessage1.MessageDlg2 (´Tem que ser numero.´, ´Atenção.´, mtInformation, [mbOk], 0);
until IsFloat;
valeu a ajuda :wink:
No caso Delphi 5 Fiz assim:
repeat
InputString := InputBox(´Quantidade ´, ´Valor:´,´´);
IsFloat:=true;
try
Code := StrToFloat(InputString);
except
on EConvertError do IsFloat:=false;
end;
if not IsFloat then
bsSkinMessage1.MessageDlg2 (´Tem que ser numero.´, ´Atenção.´, mtInformation, [mbOk], 0);
until IsFloat;
valeu a ajuda :wink:
GOSTEI 0