使 JScrollPane 自动向下滚动

新手上路,请多包涵

我正在尝试使用 JTextArea 实现 JScrollPane。 JTextArea 被附加到,我希望 JScrollPane 在添加更多文本时继续向下滚动。如何实现?

原文由 Krigath 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 850
2 个回答

对于(我认为是)一个更简单的答案,请查看: Text Area Scrolling

在 JDK5 之前,您必须在每次附加后手动更改插入符号的位置。您现在可以像这样将此行为作为默认行为:

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

这样做的好处是您不需要在代码中多次使用此代码段!

原文由 camickr 发布,翻译遵循 CC BY-SA 3.0 许可协议

我在这里找到了答案: JScrollPane and JList auto scroll

 scrollPane.getVerticalScrollBar().addAdjustmentListener(new AdjustmentListener() {
        public void adjustmentValueChanged(AdjustmentEvent e) {
            e.getAdjustable().setValue(e.getAdjustable().getMaximum());
        }
    });

原文由 Krigath 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题