verificar se alguma variavel contem somente numeros sem TRY
alguem poderia me ajudar, estou tendo uns probleminhas com isto, eu estou tentando verificar se uma string possui somente numeros, sendo esta primeira pega de um inputbox, quando eu coloco somente numeros da certo, soh q quando eu coloco qq outro caractere ele da erro de conversão, tentei utilizar da seguinte forma
var
num : integer;
begin
try
num := strtoint(inputbox(...))
except
MsgBox (Handle, ´Somente Numeros´, ´Erro´, 0);
end;
tentei tbm desta forma
except
on EConvertError do
MsgBox (Handle, ´Somente Numeros´, ´Erro´, 0);
end;
nenhum destes modos da certo
Alguem poderia me ajudar?
Antes de mais nada obrigado soh pela curiosidade da minha duvida
vlw Pessoal do Clube Delphi
var
num : integer;
begin
try
num := strtoint(inputbox(...))
except
MsgBox (Handle, ´Somente Numeros´, ´Erro´, 0);
end;
tentei tbm desta forma
except
on EConvertError do
MsgBox (Handle, ´Somente Numeros´, ´Erro´, 0);
end;
nenhum destes modos da certo
Alguem poderia me ajudar?
Antes de mais nada obrigado soh pela curiosidade da minha duvida
vlw Pessoal do Clube Delphi
Matt_nttp
Curtidas 0
Respostas
Gbastos
11/11/2003
Não lembro agora se o Delphi tem alguma função que verifica que uma string é composta de números (como o VB tem o IsNumeric), mas dá pra fazer rapidinho uma função tipo:
Eu sei q tá meio tosco, mas é só pra ilustrar... :lol:
function EhNum(Expressao: string): boolean; var I: integer; EhNumerico: boolean; begin EhNumerico := true; I := 1; while (I < Length(Expressão)) and (EhNumerico) do begin if (Ord(Expressão[I]) < 48) or (Ord(Expressão[I]) > 57) then EhNumerico := false; I := I + 1; end; Result := EhNumerico; end;
Eu sei q tá meio tosco, mas é só pra ilustrar... :lol:
GOSTEI 0
Beppe
11/11/2003
Podes usar a intrinsica Val:
var Valor, Code: Integer; begin Val(InputBox(...), Valor, Code); if Code <> 0 then ShowMessage(´Não é um número´); end;
GOSTEI 0