Когда вы вводите текст в JTextArea, он автоматически подстраивает свой размер под размер введенного текста.
Однако JTextField, похоже, этого не делает.
Вот SSCCE, который демонстрирует проблему:
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setLayout(new FlowLayout(FlowLayout.LEFT));
frame.add(new JTextArea("I resize as you type."));
frame.add(new JTextField("I don't."));
frame.setSize(200,100);
frame.setVisible(true);
}

Мне было интересно, есть ли способ, с помощью которого JTextField может настроить ширину. Я хотел бы просто использовать JTextArea, но я могу принять только одну строку ввода.