Fórum Tem como eu verificar e uma label só tem texto numérico? #239844

26/06/2004

0

Tem como eu verificar e uma label só tem texto numérico?


Janete

Janete

Responder

Posts

26/06/2004

Vinicius2k

Janete,

Vc pode usar uma função que busque por numeros na string e caso um dos caracteres não seja ela retorna falso...
Ou vc pode forçar um tentativa de conversão e caso ocorra exceção ela retorne falso (pessoalmente, não gosto dessa).
Veja :
function TestaConversao(Texto: String): Boolean;
const numeros = ´0123456789´;
var i: Integer;
begin
  for i:= 1 to Length(Texto) do
    begin
      if pos(Texto[i], numeros) = 0 then
        begin
          Result:= False;
          Exit;
        end;
    end;
  Result:= True;
end;

function TestaConversao2(Texto: String): Boolean;
begin
  try
    StrToInt(Texto);
    Result:= True;
  except
    Result:= False;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  if TestaConversao(Edit1.text) then
    ShowMessage(´Apenas Números !´)
  else ShowMessage(´Contém outros caracteres !´);

  // teste causando exceção...
  if TestaConversao2(Edit1.text) then
    ShowMessage(´Apenas Números !´)
  else ShowMessage(´Contém outros caracteres !´);
end;


Espero ter ajudado...
T+


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar