Java TextArea和JScrollPane

时间:2015-04-15 16:59:54

标签: java swing jscrollpane jtextarea

我搜索过将一个滚动条附加到textarea并找到了一些答案。尝试修复,因为它在建议中说,但似乎仍然无法正常工作。 我的文本区域变得越来越长,即使我试图创建一个静态文本区域。

不知道我在这里做错了什么:

import javax.swing.*;
import javax.swing.border.EtchedBorder;
import javax.swing.border.TitledBorder;

public class Ovning20 extends JFrame {
    private JPanel p1 = new JPanel();
    private JTextArea ta1;
    JScrollPane scroll;

    public Ovning20()
    {
        setSize(400,200);
        setLocation(500, 300);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setResizable(false);

        ta1 = new JTextArea();
        ta1.setEditable(true);
        ta1.setBorder(new TitledBorder(new EtchedBorder(), "Skriv in något:"));

        scroll = new JScrollPane(ta1, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);

        ta1.setAutoscrolls(true);
        ta1.setColumns (20);
        ta1.setRows(3);

        ta1.setLineWrap (true);
        ta1.setWrapStyleWord (true); //default

        p1.add(ta1);
        p1.add(scroll);
        add(p1);
        setVisible(true);
    }

public static void main(String[] args) {    
        new Ovning20();
    }
}

1 个答案:

答案 0 :(得分:4)

删除声明

p1.add(ta1); 

将textarea添加到面板p1并有效地将其从其滚动窗格父项中删除(因为组件只能有一个父组件)