La respuesta a tu pregunta puede ser la función Chr()... pero para este caso no te recomiendo esto, sinó que compares contra los valores de los caracteres, esta es la traducción "literal" de tu código:
Código:
if not (Key in [48..57, 8]) then
Key := 0
else
if (Key <> 8) and (StrToInt(TEdit(Sender).Text + Chr(Key)) > 999) then
Key := 0;
Saludos!