Полоса прокрутки JScrollPane перемещается вниз на JEditorPane.setText ()

Каждый раз (кроме первого раза) я устанавливаю текст в JEditorPane, полоса прокрутки переходит в нижнюю часть JEditorPane. Есть ли способ избежать этого? Один из способов, который я пытался использовать setCaretPosition (0) после setText (). Это работает, но это не совсем то, что мне нужно. Полоса прокрутки спрыгивает вниз, а затем прыгает вверх. Есть ли способ избежать какого-либо движения полосы прокрутки в settext ()?

Мой код:

package test;

import javax.swing.JApplet;
import javax.swing.JButton;
import javax.swing.JEditorPane;
import javax.swing.JScrollPane;
import javax.swing.event.HyperlinkEvent;
import javax.swing.event.HyperlinkListener;

public class Test extends JApplet implements  HyperlinkListener {

    JEditorPane dataDisplayer = new JEditorPane();

    public void init() {
        ataDisplayer.setEditable(false);
        dataDisplayer.add(new JButton());
        dataDisplayer.setContentType("text/html");   
        JScrollPane jsp = new JScrollPane(dataDisplayer);
        dataDisplayer.setText("<a href=''>Change Text</a><br><br><br><br><br><br><br><br><br><br>bla");
        this.dataDisplayer.addHyperlinkListener(this);
        setContentPane(jsp);
    }

    @Override
    public void hyperlinkUpdate(HyperlinkEvent arg0) {
        dataDisplayer.setText("<a href=''>Change Text</a><br><br><br><br><br><br><br><br><br><br>bla bla");

    }

}

Ответы на вопрос(2)

Ваш ответ на вопрос