我正在尝试从数据文件中读取信息并将其处理到我正在制作的术语项目的 about 文件的 JTextArea
中。问题是,当我执行 scanner.nextLine()
时,它会扩展文本区域以适合文本,而我想要的是保持文本区域的大小相同,并且如果它用完当前行上的空格以开始
if(event.getSource() == forward)
{
text.setText(s.nextLine());
}
文本区域设置如下:
text = new JTextArea(11, 30);
基本上我想知道的是,文本区域是否提供了一种方法(我看过),如果当前已满,则可以将空间重新定位到下一行。如果在文本区域中没有办法编辑数据文件,我很可能只能编辑数据文件。
最佳答案
将 JTextArea
放入 JScrollPane
中,并将滚动 Pane 添加到容器中
text = new JTextArea(11, 30);
JScrollPane scrollpane = new JScrollPane(text);
//...
add(scrollpane);
参见How to use Scroll Panes了解更多详情
这将阻止滚动 Pane 在当前容器中增长。
另请查看 JTextArea#setLineWrap
和 JTextArea#setWrapStyleWord
,它们将影响组件处理超出可视宽度的文本的方式。
参见How to use Text Areas了解更多详情
关于java - 阻止 JTextArea 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19201605/