如何在 JTextArea 中限制用户输入?

How to restrict user input in JTextArea?

目前,我有一个文本区域,其中包含一些菜单选项和滚动条,供我添加更多项目时使用。这显示正常,但用户可以在此文本区域中键入并更改菜单的内容。我怎样才能限制他们打字?

import java.awt.*;
import javax.swing.*;

    JFrame frame;
    frame = new JFrame();
    frame.setSize(1000, 900);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.getContentPane().setLayout(null);



    JPanel VendingSelection = new JPanel();
    VendingSelection.setBounds(0, 0, 984, 865);
    frame.getContentPane().add(VendingSelection);
    VendingSelection.setLayout(null);

    JTextArea txtArea = new JTextArea();
    txtArea.setText("Hamburger,5.00,6\n"
            +       "Fries,2.25,7\n"
            +       "Hotdog,3,10");
    VendingSelection.add(txtArea);
    JScrollPane scroll = new JScrollPane(txtArea);
    scroll.setBounds(534, 89, 334, 654);
    VendingSelection.add(scroll);

要使 JTextArea 不可编辑,请调用 setEditable() 方法并传递一个假值作为参数。

使用setEditable(boolean)方法:

JTextArea txtArea = new JTextArea();
    txtArea.setText("Hamburger,5.00,6\n"
            +       "Fries,2.25,7\n"
            +       "Hotdog,3,10");
    txtArea.setEditable(false);