繁体   English   中英

将JScrollPane锁定到JTextArea的底部(java swing)

[英]Lock JScrollPane to bottom of JTextArea (java swing)

我目前有一个设置,我在JScrollPane有一个JTextArea以便您可以滚动框中的文本。

我想要做的是设置JScrollPane ,以便每当新文本添加到框中时(总是在新行的底部),它将向下滚动到底部。

有没有一种简单的方法来实现这一目标?

请注意:我不希望它被永久锁定在底部(用户仍然可以滚动文本),就像正在更新文本时一样。 我正在追逐一种效果,就像在UNIX中拖尾日志文件一样。

为什么不简单地将插入位置设置为JTextArea的末尾。

myTextArea.setCaretPosition(myTextArea.getDocument().getLength());

我不希望它永久地锁在底部

示例使用AdjustmentListener在滚动条的拇指按住鼠标时暂停自动滚动。 一旦拇指被释放,自动滚动就会恢复。 您可以使用@Hovercraft建议的方法将其调整为JTextArea

我使用这段代码和JTextArea在添加文本时到底

((DefaultCaret) jTextArea1.getCaret()).setUpdatePolicy(DefaultCaret.ALWAYS_UPDATE);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM