import java.awt.BorderLayout;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.SwingUtilities;
public class TextAreaKeyListener {
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> new TextAreaKeyListener());
}
public TextAreaKeyListener() {
JFrame frame = new JFrame("TextAreaKeyListener");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocationByPlatform(true);
frame.setSize(600, 400);
JPanel mainPanel = new JPanel(new BorderLayout());
JTextArea area = new JTextArea();
area.addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_BACK_SPACE) {
JOptionPane.showMessageDialog(frame, "Backspace is prohibited!", "Prohibited key detected!", JOptionPane.WARNING_MESSAGE);
e.consume();
}
}
});
mainPanel.add(area, BorderLayout.CENTER);
frame.add(mainPanel);
frame.setVisible(true);
}
}