Hola coso disculpa que no conteste antes pero es que en mi universidad la conexion es terrible, tal como dijiste, el problema se solucionó con tus sugerencias
publico el codigo para que le sirva a alguien más
Código Delphi
[-]
if key='.' then
begin
key:=',';
end;
if not(Key in ['0'..'9',',','.',#8]) then
begin
Key:=#0;
end;