Puntos de miles en cadenas)
0000-00-00 00:00:00
procedure TForm1.PuntosDeMiles(Sender: TObject); var i : integer; aux,aux2,cad : string; begin cad:='0123456789'; aux2:=''; with (Sender as TEdit) do begin aux:=text; if aux[1]='0' then delete(aux,1,1); for i:=1 to length(aux) do begin if pos(aux[i],cad)>0 then aux2:=aux2+aux[i]; end; i:=1; repeat if (i mod 4=0) then Insert('.',aux2,length(aux2)-i+2); inc(i); until (i>length(aux2)); text:=aux2; SelStart:=length(aux2); end; end;
Asigna el onchange del edit al que quieras aplicar lo de los puntos de miles. RECUERDA que al meter los caracteres de '.' en la cadena, el procedimiento strtoint dejara de funcionar correctamente ya que no tendras una cadena con un numero, sino una cadena normal y corriente.
Otra cosa: no olvides inicializar el edit con un '0' como valor de text.
PD Puedes encontrar un procedimiento para pasar de cadena a entero mucho mas robusto que el strtoint en estas paginas, que es capaz de pasar de cadena de numeros con puntos de miles al numero correcto.