Potresti procedere in due modi:
[list=1][*]tentare la conversione della stringa in numero verificando la presenza di un errore;[*]verificare la "numericità" dei caratteri analizzandone uno alla volta.[/list=1]

Per il primo approccio, potresti utilizzare la procedura Val di Delphi, la quale converte una stringa numerica in un valore float o intero. Se la stringa contiene caratteri "non convertibili", ti viene restituita la posizione del primo di questi caratteri "ostili". Analizzando questo valore di ritorno, puoi determinare se i caratteri di una stringa sono tutti numerici: la posizione del carattere non valido è uguale a zero in caso affermativo.

Per il secondo approccio, potresti scandire tutti i caratteri della stringa verificando se appartengono all'insieme dei caratteri numerici usando l'operatore in in questo modo:
codice:
  Result := True;
  for i := 1 to Length(s) do
  begin
    if not(s[i] in ['0'..'9']) then
    begin
      Result := False;
      Break;
    end;
  end;
(codice non verificato)
Prova e dimmi come ti è andata.
Ciao!