自动滚动到文本区域的底部

时间:2012-01-25 09:53:55

标签: java swing jscrollpane jtextarea jscrollbar

我有一个带滚动条的文本区域。我会定期添加新的文本行。我希望每当添加新行时,文本区域会自动滚动到最底部的条目(最新的条目)。我怎么能做到这一点?

textAreaStatus = new WebTextArea();
scrollPane = new JScrollPane(textAreaStatus);
textAreaStatus.setBackground(Color.black);
textAreaStatus.setBorder(BorderFactory.createEmptyBorder(4, 4, 4, 4));

2 个答案:

答案 0 :(得分:21)

查看DefaultCaret的updatePolicy属性:它可能会执行您想要的操作

DefaultCaret caret = (DefaultCaret) textArea.getCaret();
caret.setUpdatePolicy(ALWAYS_UPDATE);

Rob的nice summary of options(@camickr)

答案 1 :(得分:15)

textArea.setCaretPosition(textArea.getDocument().getLength());