Java 滚动条没有出现
我已经为scrollbar添加了一些代码,这些代码是从其他人在stackoverflow上提出的问题中获得的,但我没有在我的JTextArea中添加任何scrollbar。我想将滚动条添加到f2帧中的JTextArea区域2Java 滚动条没有出现,java,swing,Java,Swing,我已经为scrollbar添加了一些代码,这些代码是从其他人在stackoverflow上提出的问题中获得的,但我没有在我的JTextArea中添加任何scrollbar。我想将滚动条添加到f2帧中的JTextArea区域2 import javax.swing.*; import java.io.*; import java.awt.event.*; public class TextAreaExample implements ActionListener { JFrame f1 =
import javax.swing.*;
import java.io.*;
import java.awt.event.*;
public class TextAreaExample implements ActionListener {
JFrame f1 = new JFrame("INPUT WINDOW");
JFrame f2 = new JFrame("FILE DATA OUTPUT");
JTextArea area1;
JTextArea area2;
JButton b;
TextAreaExample() {
area1 = new JTextArea();
area2 = new JTextArea();
JScrollPane scroll = new JScrollPane (area2, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
b = new JButton("click Me");
b.setBounds(100, 95, 80, 30);
f1.add(b);
area1.setBounds(10, 30, 200, 60);
area2.setBounds(5, 5, 480, 480);
f1.add(area1);
f2.add(area2);
f2.add(scroll);
f1.setSize(300,140);
f2.setSize(510, 510);
f1.setLayout(null);
f2.setLayout(null);
f1.setVisible(true);
f2.setVisible(true);
b.addActionListener(this);
f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void actionPerformed(ActionEvent e) {
if(e.getSource() == b) {
String s1 = area1.getText();
String s2 = "";
try {
FileInputStream fin = new FileInputStream(s1);
BufferedInputStream bin = new BufferedInputStream(fin);
int i;
while((i = bin.read()) != -1) {
s2 = s2 + (char)i;
}
bin.close();
fin.close();
}catch(Exception a) {
System.out.println(a);
}
area2.setText(s2);
}
}
public static void main(String args[]) {
new TextAreaExample();
}
}
首先,使用JTextArea作为参数创建一个JScrollPane,这是正确的
但随后将文本区域添加到框架中,这是不正确的。Swing组件只能有一个父组件,因此文本区域将从滚动窗格中删除
滚动窗格必须添加到框架中
f1.add(scroll);
此外,还要去掉所有空布局和setBounds()语句。Swing设计用于布局管理器。阅读上Swing教程中的部分,了解更多信息和示例,以开始学习
现在,当您创建文本区域时,可以使用:
JTextArea textArea = new JTextArea(5, 20);
建议文本区域的原始大小。当添加超过5行数据时,滚动条将出现
首先,使用JTextArea作为参数创建一个JScrollPane,这是正确的
但随后将文本区域添加到框架中,这是不正确的。Swing组件只能有一个父组件,因此文本区域将从滚动窗格中删除
滚动窗格必须添加到框架中
f1.add(scroll);
此外,还要去掉所有空布局和setBounds()语句。Swing设计用于布局管理器。阅读上Swing教程中的部分,了解更多信息和示例,以开始学习
现在,当您创建文本区域时,可以使用:
JTextArea textArea = new JTextArea(5, 20);
建议文本区域的原始大小。当添加超过5行数据时,滚动条将出现