yo lo hago de esta manera
tf = new TextField("IP", "",3, TextField.ANY);
pero podrias declararlo asi
int p=3;
JTextField( i)
pero como lo tienes deberia de funcionar si no te funciona busca en las opciones de constructor de JTextField()
JTextField(String text, int columns). No aplico sobre ellos ningún
tipo de ajuste de tamaños ni bordes, solamente el parámetro del
JTextFields que debe indicar la cantidad de caracteres de visualización.
talvez puedes seguir introduciendo pero no los contara mas qeu los 3 pero es un error muy raro