Java - 将JEditorPane添加到JScrollPane中,并滚动到最初的底部
问题描述:
我有一个使用“text/html”类型的JEditorPane,并且我已将editorPane添加到JScrollPane。一切都很好,除了在启动时显示JEditorPane的底部。我想默认显示最顶端。Java - 将JEditorPane添加到JScrollPane中,并滚动到最初的底部
这里是我的代码:
public class DisclaimerPage extends JPanel {
private static final String DISCLAIMER_CONTENT =
"<h2>This is a H2 header</h2>" + //Bold first line (Title)
"<p> This is the first paragraph having many lines of text. Text Text Text"
+ "Text Text TextText Text TextText Text TextText Text TextText Text TextText Text Text</p>" //Content
+ "<p> <b>Bold Second Paragraph</b>: there will be N number of paragraph after this.</p>"
+ "<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>"
+ "<p> Last Paragraph </p>";
private JScrollPane disclaimerScrollPane;
private JEditorPane disclaimerContentPane;
public DisclaimerPage() {
setLayout(new BorderLayout(0, 15));
disclaimerContentPane = new JEditorPane();
disclaimerContentPane.setEditable(false);
disclaimerContentPane.setContentType("text/html");
disclaimerContentPane.setText(DISCLAIMER_CONTENT);
disclaimerScrollPane = new JScrollPane(disclaimerContentPane);
disclaimerScrollPane.setPreferredSize(new Dimension(480, 360));
this.add(disclaimerScrollPane, BorderLayout.CENTER);
}
}
答
通过使用
disclaimerContentPane.setCaretPosition(0);
可以解决这个问题
JScrollPane.getViewPort()scrollRectToVisible(新的Rectangle(0,0,1,1 )); – ControlAltDel