我想将文本添加到JTextArea,并在垂直方向上设置自动滚动条。
但是当在地理位置打字时,我想要一个自动新行,当行中没有空格时。 如果我只使用JTextArea就可以,但是当我把它放在JScrollPane中时,它不是 在需要时开辟新的一条线。
我该怎么做?
谢谢!
答案 0 :(得分:7)
你必须配置textArea来包装:
textArea.setLineWrap(true);
textArea.setWrapStyleWord(true);
您可以考虑阅读基本tutorial以有效开始: - )
答案 1 :(得分:0)
默认情况下,JTextArea
不会换行文本,因此您必须手动定义该行为:
textArea.setLineWrap(true);
textArea.setWrapStyleWord(true);
另外,请确保正确设置JScrollPane
:
JScrollPane sp = new JScrollPane(textArea);
//JScrollPanes are just like JPanels (except for the scrollbars) so be careful not to just add the JComponent to your frame; add the container instead.
frame.add(sp);
作为旁注,请阅读tutorial @kleopatra,以便有助于在textareas上获得良好的基础。
答案 2 :(得分:-1)
JTextArea不是实现Scrollable接口吗?那你为什么需要JScrollPane?
编辑你的评论,这个适用于我:
JScrollPane sP= new JScrollPane(txtarea);
sP.setBounds(10,60,780,500);
sP.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);