Como ampliación al práctico truco obsequio de Ayla, podemos terminar de convertir el TEdit en un campo numérico únicamente. Con lo cual ampliariamos su función del siguiente modo:
function TFormPatrones.fSepDecimal(tecla: char) : char;
var
res: char;
begin
res := tecla;
if DECIMALSEPARATOR = ',' then begin
if tecla = '.' then res:= ','
else res := tecla;
end
else begin
if tecla = ',' then res:= '.'
else res := tecla;
end;
if not (res in ['0'..'9',DECIMALSEPARATOR,#8]) then
res := #0;
Result := res;
end;
De esta forma tan solo nos dejará escribir números, separadores, desplazarnos por el TEdit y borrar elementos.