我搜索了有关将滚动条附加到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();
    }
}

最佳答案

删除语句

p1.add(ta1);


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

10-08 09:08