以下是我的代码的一部分:
JFrame window = new JFrame();
JPanel panel = new JPanel();
JTextArea text = new JTextArea();
JScrollPane scroll = new JScrollPane(text);
private Window()
{
createWindow();
}
public void createWindow()
{
window.setLayout(null);
window.setVisible(true);
panel.setVisible(true);
text.setBounds(20, 100, 320, 270);
}
public void update2(String employee)
{
text.setText(null);
try
{
scanner = new Scanner(employee);
}catch(Exception e){
e.printStackTrace();
}
while(scanner.hasNextLine())
{
String line = scanner.nextLine();
text.append(line+"\n");
}
revalidate();
}
我想知道如何将滚动条添加到TextArea“text”。它是一个数据库应用程序,它将数据字符串发送到TextArea。我希望应用程序在必要时显示滚动条(垂直或水平) - TextArea中的字符串太多。我一直在尝试很多东西,但没有任何作用。构造函数必须是私有的,因为我使用的是Singleton。
答案 0 :(得分:1)
避免使用null
布局。请查看Layout Managers以获得更好的选择。
除非您不包括将Scrollpane
添加到JFrame
的部分,否则我建议您执行与此类似的操作
frame.add(scrollpane, BorderLayout.CENTER);
BorderLayout.CENTER
是JFrames默认布局中的一个位置。请阅读here了解更多信息。
答案 1 :(得分:1)
顺便问一下,你把你的卷轴添加到框架中了什么?
UTF-8 without BOM
JScrollPane是一个容器,可以在需要时在组件周围放置滚动条,并且还有自己的布局。当你想把任何东西包装成一个滚动时你需要做的就是把它传递给JScrollPane构造函数:。
window.add(scroll);
window.setVisible (true);
如果上述方法不起作用,请使用:
JFrame window = new JFrame();
JPanel panel = new JPanel();
JTextArea text = new JTextArea();
JScrollPane scroll = new JScrollPane(text);