Bildlaufleiste von JScrollPane springt auf JEditorPane.setText () nach unten
Jedes Mal (außer beim ersten Mal), wenn ich Text in JEditorPane einstelle, springt die Bildlaufleiste zum unteren Rand von JEditorPane. Gibt es eine Möglichkeit, dies zu vermeiden? Ich habe versucht, setCaretPosition (0) nach setText () zu verwenden. Es funktioniert, ist aber nicht genau das, was ich brauche. Die Bildlaufleiste springt nach unten und dann nach oben. Gibt es eine Möglichkeit, eine Bewegung der Bildlaufleiste bei settext () zu vermeiden?
Mein Code:
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");
}
}