JScrollPane中文件和复选框中的文字摆动

时间:2015-09-29 08:57:33

标签: 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.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);  
    }
}

它工作正常,但是当文本结束时,我接受多行后的复选框。

输出屏幕。

enter image description here

任何人都可以帮助我,让我知道如何摆脱空间。

1 个答案:

答案 0 :(得分:2)

在伪代码中

  1. 创建面板。设置为BorderLayout
  2. 在滚动窗格中换行文本区域并将滚动面板添加到CENTER
  3. 向南方添加复选框