Estoy usando JScrollPane para permitir el desplazamiento en un JFrame que tiene un componente de texto que sirve como editor de texto. Lo que quiero hacer, después de configurar el texto en este editor, es desplazarlo hacia arriba, para que pueda ver lo que está al principio del archivo.
¿Alguien sabe como hacer esto?
En caso de que no esté utilizando un componente de texto, eche un vistazo al hilo publicado aquí ... Configuración de la barra de desplazamiento en un JScrollPane
Su solución es hacer girar un hilo a través de invokeLater
final JScrollPane scroll = new JScrollPane(text); javax.swing.SwingUtilities.invokeLater(new Runnable() { public void run() { scroll.getVerticalScrollBar().setValue(0); } });
fuente
invokeLater
no hace girar un hilo, simplemente pone en cola un evento para que se ejecute después del evento actual (por ejemplo, clic en el botón, o cualquiera que sea el contexto del código que llamainvokeLater
) y cualquier otro evento ya en cola finalice.Esto hará que el trabajo:
fuente
Puede usar el método
setCaretPosition(0)
justo despuéssetText(String t)
de su componente de texto.fuente
Utilice JComponent.scrollRectToVisible ()
Si necesitas más información, aquí tienes un artículo.
fuente
Puedes probar esto:
scrollPane.getViewport().setViewPosition(new Point(0,0));
De acuerdo con JavaDocs setViewPosition () se comporta así:
fuente
Así es cómo:
textArea.setSelectionStart(0); textArea.setSelectionEnd(0);
fuente