Otra forma tambien seria algo asi:
Código Delphi
[-]
procedure TForm1.Edit1Change(Sender: TObject);
var i: integer;
begin
i:= e.SelStart;
E.SelStart:= i;
end;
Con esto mantenemos siempre el cursor en la posición que corresponde y evitamos que si edita algun caracter del centro del texto el cursor se mueva al final... es una opción mas...
Saludos