我想在我的swing应用程序中创建三个JTextArea
。
每个JTextArea
具有不同的大小。
第一个JTextArea
应具有8列
第二个应该只有一列
最后一列应该有50列。
我最初的问题是:
每当输入内容时,JTextArea
都会继续调整其宽度。
此问题已由JScrollPane
,setLineWrap(true)
和setWrapStyleWord(true)
修复。
所以这是我的问题。
每当我将setLineWrap()
添加到JTextArea
时,都会调整JTextArea
的大小。
我的第一和第二个JTextArea
已调整为12列。
我搜索并找到了一些解决方案,但他们使用了MigLayout。
有什么方法可以在JTextArea
中添加单词和换行符而无需调整其大小(当然,也可以不使用MigLayout)?
用单词和换行符设置JTextArea
列的最简单方法是什么?
最佳答案
用单词和换行符设置JTextArea列的最简单方法是什么?
使用以下代码创建JTextArea:
JTextArea textArea = new JTextArea(5, 50);
textArea.setLineWrap(true);
textArea.setWrapStyleWord(true);
JScrollPane scrollPane = new JScrollPane( textArea );
JPanel panel = new JPanel();
panel.add(scrollPane);
frame.add(panel, BorderLayout.PAGE_START);
默认情况下,JPanel使用FlowLayout,它会考虑添加到其中的任何组件的大小。 BorderLayout.PAGE_START将考虑添加到其中的任何组件的高度。
滚动条将根据需要显示将什么文本添加到文本区域。因此,关键是使用符合您要求的布局管理器(或布局管理器的组合)。
关于java - 使用换行时调整TextArea的大小,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33198303/