Hello
I have panel with many of JTextFields Vertically when I sue the down arrow key, the JScrollpane can not follow the caret, any one have Idea to make the Scroll Follow the cart. this is the example...

Thanks in advance.

Java Code:
import java.awt.Dimension;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.KeyboardFocusManager;
import java.awt.event.KeyEvent;
import java.util.HashSet;
import java.util.Vector;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.KeyStroke;

public class ScrollTesting {

	private JPanel panel = new JPanel();
	private JScrollPane scrollPane = new JScrollPane(panel);

	private Vector<JTextField> fieldsVector = new Vector<JTextField>();
	private Dimension preferredSize = new Dimension(400, 40);
	private Font font = new Font("Tahoma", 1, 28);

	public ScrollTesting() {

		panel.setLayout(new GridLayout(100, 1));
		for (int i = 0; i < 100; i++) {
			fieldsVector.addElement(new JTextField());
			fieldsVector.lastElement().setPreferredSize(preferredSize);
			fieldsVector.lastElement().setFont(font);
			panel.add(fieldsVector.lastElement());
		}

		enterAction();

		JFrame frame = new JFrame();
		frame.setSize(800, 600);
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.add(scrollPane);
		frame.setVisible(true);

	}

	private void enterAction() {
		HashSet<KeyStroke> forwardKeys = new HashSet<KeyStroke>();
		forwardKeys.add(KeyStroke.getKeyStroke(KeyEvent.VK_TAB, 0));
		forwardKeys.add(KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0));
		forwardKeys.add(KeyStroke.getKeyStroke(KeyEvent.VK_DOWN, 0));
		panel.setFocusTraversalKeys(
				KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, forwardKeys);
	}

	public static void main(String[] args) {
		new ScrollTesting();
	}
}