部分摘自Oracle的How to use text areas tutorial.
全文见此:http://docs.oracle.com/javase/tutorial/uiswing/components/textarea.html
具体思路是:当有新内容append到text area控件中后,设置光标位置到text area控件内容的最后一行,即实现了将text area控件的viewport滚动到内容的最底部。
具体代码如下:
1
2
|
jTextArea.append(msg +
"\r\n"
);
jTextArea.setCaretPosition(txaLogShow.getDocument().getLength());
|
值得一提的是:
除非用户使用鼠标或拖拽方式重新在JTextArea中的内容上定位了插入光标,如果JTextArea设置了autoscroll,那么当JTextArea.append(...)方法调用后,JTextArea控件会自定将刚刚append的内容显示出来,也即不用费力的去scroll to bottom操作。
本文转自 rickqin 51CTO博客,原文链接:http://blog.51cto.com/rickqin/1714842