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

时间:2018-04-23 00:09:18

标签: java

目前我有一个带有几个菜单选项的文本区域,当我添加更多项目时,滚动条会显示。这显示正常,但用户可以键入此textarea并更改菜单的内容。如何限制他们输入?

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);

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

使用setEditable(boolean)方法:

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