java JTextArea与JPanel内部的JScrollPane不兼容
我一直在尝试制作一个JTextArea,我可以像在Word文档中一样在其中书写;当文本太宽时,它会环绕,当文本太高时,它会向下滚动)
到目前为止,如果包裹太宽,效果很好。但是,滚动条不工作。它确实出现了,但它不会再出现了,这意味着无论发生什么情况,都无法查看JTextArea原始维度之外的任何内容
有人知道我做错了什么吗?下面是代码的样子;它是名为panel的JPanel,我稍后将它添加到另一个JPanel中,而另一个JPanel又被添加到JFrame中
JTextArea text = new JTextArea(rows, columns);
text.setLineWrap(true);
text.setWrapStyleWord(true);
text.setPreferredSize(new Dimension(text.getWidth(), text.getHeight()));
JScrollPane scroll = new JScrollPane(text);
scroll.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.PAGE_AXIS));
panel.add(scroll);
# 1 楼答案
当我删除-
text.setPreferredSize
时,效果很好