java添加滚动到文本区域
如何将滚动条添加到文本区域。我尝试过使用此代码,但它不起作用
middlePanel=new JPanel();
middlePanel.setBorder(new TitledBorder(new EtchedBorder(), "Display Area"));
// create the middle panel components
display = new JTextArea(16, 58);
display.setEditable(false); // set textArea non-editable
scroll = new JScrollPane(display);
scroll.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
//Add Textarea in to middle panel
middlePanel.add(scroll);
middlePanel.add(display);
# 1 楼答案
尝试将这两行代码添加到代码中。我希望它能奏效。这对我有用:)
输出的图片如下所示
# 2 楼答案
使用java swing实现滚动条的最简单方法如下:
# 3 楼答案
将JTextArea添加到JScrollPane后:
您不需要像这样再次将其添加到其他容器中:
只需删除最后一行代码,它就可以正常工作。像这样:
JScrollPane只是另一个容器,它可以在组件需要时在组件周围放置滚动条,并且有自己的布局。当你想把任何东西包装成一个卷轴时,只需把它传递给JScrollPane构造函数:
或者像这样设置视图:
附加:
下面是一个完整的工作示例,因为您仍然没有让它工作:
以下是你得到的:
# 4 楼答案
我天真的假设是滚动窗格的大小将自动确定
唯一对我有效的解决方案是显式地查看JScrollPane的边界:
也许它会帮助一些未来的游客:)