I\'m using JScrollPane to allow scrolling in a JFrame that has a text component that\'s serving as a text editor. What I want to do, after setting the text in this editor,
You can try this:
scrollPane.getViewport().setViewPosition(new Point(0,0));
According to the JavaDocs setViewPosition() behaves like this:
Sets the view coordinates that appear in the upper left hand corner of the viewport, does nothing if there's no view.
Just in case you are not using a text component take a look at the thread posted here.... Setting Scroll Bar on a JScrollPane
Their solution is to spin off a thread via invokeLater
final JScrollPane scroll = new JScrollPane(text);
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
scroll.getVerticalScrollBar().setValue(0);
}
});
This will make the work:
DefaultCaret caret = (DefaultCaret) textArea.getCaret();
caret.setUpdatePolicy(DefaultCaret.NEVER_UPDATE);
Calling setCaretPosition(0) on your text component will cause it to scroll to the top.
You can use the method setCaretPosition(0)
just after setText(String t)
of your text component.
Here's how:
textArea.setSelectionStart(0);
textArea.setSelectionEnd(0);