Java SE+Swing+JScrollPane, (JLabel sobe na tela e não da para o usuário ver), tem como resolver ?

package erp.aop.gui;

import java.awt.KeyboardFocusManager;
import java.awt.Rectangle;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import javax.swing.*;

public class FollowFocus {
	
	public static void main(String[] args) {
		SwingUtilities.invokeLater(new Runnable() {
			public void run() {
				final int ROWS = 100;
				final JPanel content = new JPanel();
				content.setLayout(new BoxLayout(content, BoxLayout.Y_AXIS));
				JLabel label = new JLabel("Digite os Dados:");

				for (int i = 0; i < ROWS; i++) {
					JTextField field = new JTextField("" + i);
					field.setName("field#" + i);
					content.add(label);
					content.add(field);
				}
				
				final JScrollPane scroll = new JScrollPane(content);
				
				KeyboardFocusManager.getCurrentKeyboardFocusManager().addPropertyChangeListener("focusOwner",
					new PropertyChangeListener() {
						
						@Override
						public void propertyChange(PropertyChangeEvent evt) {
							if (!(evt.getNewValue() instanceof JComponent)) {
								return;
							}
							
							JViewport viewport = (JViewport) content.getParent();
							JComponent focused = (JComponent) evt.getNewValue();
							
							if (content.isAncestorOf(focused)) {
								Rectangle rect = focused.getBounds();
								Rectangle r2 = viewport.getVisibleRect();
								content.scrollRectToVisible(new Rectangle(rect.x, rect.y, (int) r2.getWidth(), (int) r2.getHeight()));
							}
						}
					}
				);

				JFrame window = new JFrame("Follow focus");
				window.setContentPane(new JScrollPane(content));
				window.setSize(200, 200);
				window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
				window.setVisible(true);
			}
		});
	}
}

Estou com um problema nesse código.

Quando muda o foco a mensagem da JLabel “Digite os Dados:” não aparece junto com o JTextField. Aparece JTextField e o JLabel aparece fora do campo visual da tela.

Era para aparecer na tela:

Digite os Dados:
JTextField
Digite os Dados:
JTextField

mas aparece:

JTextField
Digite os Dados:
JTextField

A JLabel do campo sempre sobe na tela. Alguém pode me ajudar a consertar?