Re: JTextArea的内容不滚动# Java - 爪哇娇娃
p*a
1 楼
经过痛苦的实践与摸索,偶终于找到了一个土办法让它滚动
到最后一行.
首先记录下空白JTextArea的viewport size
然后append一行文字进去,再记录新的viewport size
然后算出这两个size的高度差
然后取得JTextArea的vertical scrollbar
设其value为其maximum value+新添行数x高度差
code 如下:
// get line height first
JTextArea area=MyFrame.getTextArea();
Dimension d1=area.getPreferredScrollableViewportSize();
area.append(message); //one line message
Dimension d2=area.getPreferredScrollableViewportSize();
int lineHeight=(int)(d2.getHeight()-d1.getHeight());
......
// append new te
到最后一行.
首先记录下空白JTextArea的viewport size
然后append一行文字进去,再记录新的viewport size
然后算出这两个size的高度差
然后取得JTextArea的vertical scrollbar
设其value为其maximum value+新添行数x高度差
code 如下:
// get line height first
JTextArea area=MyFrame.getTextArea();
Dimension d1=area.getPreferredScrollableViewportSize();
area.append(message); //one line message
Dimension d2=area.getPreferredScrollableViewportSize();
int lineHeight=(int)(d2.getHeight()-d1.getHeight());
......
// append new te