我有一个连接到设备的Java应用程序,并在JTextArea
中显示日志。我希望JTextArea
可以滚动,我已将其放在JScrollPane
内。包含JScrollPane
的{{1}}位于JTextArea
的{{1}}部分。我使用CENTER
在显示之前设置BorderLayout
的大小。但是,这有一些问题:
没有为pack()
设置高度,它很薄,文字看不太清楚(在第二张图片中实际上有文字):
为JFrame
设置首选大小时,它似乎最初工作正常。但是当有更多文本时,滚动条不会按预期显示。无论JTextArea
中的文字数量多少,都会在JTextArea
调整大小时显示。这也不会通过滚动显示所有文本。
此外,设置最小高度也无济于事;它导致与第一种情况相同的结果。
我的初始化框架代码:
JFrame
答案 0 :(得分:2)
不要玩尺寸。
在文本区域中指定所需的行/列,文本区域将计算其自己的首选大小。
//logArea = new JTextArea();
logArea = new JTextArea(5, 20);