Java JScrollPane中的文件文本和复选框
我正在尝试在swings中的滚动窗格中设置textarea和checkbox。我的代码如下所示:Java JScrollPane中的文件文本和复选框,java,swing,Java,Swing,我正在尝试在swings中的滚动窗格中设置textarea和checkbox。我的代码如下所示: import java.awt.Component; import java.awt.Container; import java.awt.GridLayout; import java.io.BufferedReader; import java.io.FileReader; import javax.swing.AbstractButton; import javax.swing.JCheckB
import java.awt.Component;
import java.awt.Container;
import java.awt.GridLayout;
import java.io.BufferedReader;
import java.io.FileReader;
import javax.swing.AbstractButton;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class ScrollBar {
public static void main(String[] args) throws Exception{
ScrollBar s = new ScrollBar();
JFrame.setDefaultLookAndFeelDecorated(true);
JFrame frame = new JFrame ();
JTextArea textArea = new JTextArea ();
textArea.setLineWrap(true);
textArea.setWrapStyleWord(true);
JPanel panel = new JPanel();
panel.setAlignmentX(10);
panel.setAlignmentY(10);
panel.setSize(330, 240);
panel.setLayout(new GridLayout(100,0));
FileReader inputFile = new FileReader("license.txt");
BufferedReader br = new BufferedReader(inputFile);
textArea.read(br, null);
panel.add(textArea);
JCheckBox j = new JCheckBox("I accept");
panel.add(j);
textArea.setEditable(false);
JScrollPane scroll = new JScrollPane (panel,
JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
frame.add(scroll);
frame.setTitle("License");
frame.setSize(430,270);
frame.setVisible(true);
}
}
这是工作正常,但我得到我接受复选框后,许多行文字结束时
输出屏幕
谁能帮我一下,让我知道如何去掉空格。伪代码
您正在创建一个包含100行的gridlayout,这是您真正想要的吗?您真的需要在滚动窗格中同时使用这两个行吗?将文本区域放在自己的滚动窗格中,并将复选框(可能)放在南部位置,不是更好吗,在滚动窗格下?这有助于在单击复选框之前读取整个文件。我认为我应该使用GridBagLayout,因为我需要不均匀的行/列间距,并且GridBagLayout提供了一个具有统一大小布局的矩形布局。