JEditorPane에서 텍스트를 설정할 때마다 스크롤 막대가 JEditorPane의 맨 아래로 이동합니다. 이것을 피할 수있는 방법이 있습니까? 내가 시도한 한 가지 방법은 setText() 후에 setCaretPosition (0)을 사용하는 것입니다. 그것은 작동하지만 그것은 내가 필요로하는 것이 아닙니다. 스크롤 막대가 아래로 이동 한 다음 위로 이동합니다. settext()에서 스크롤바의 움직임을 피할 수있는 방법이 있습니까?JScrollPane 스크롤 바가 JEditorPane.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");
}
}
참조이 [대체] (HTTP ://stackoverflow.com/a/11299764/230513). – trashgod