Как да открием натисканията на клавиши в Java

Знаейки кога даден потребител натиска определен ключ е важно.

Стъпка 1

Създайте прост клас, който създава и показва JFrame в момента:

импорт java.awt.Dimension; импорт java.lang.reflect.InvocationTargetException;

импорт javax.swing.JFrame; внос javax.swing.SwingUtilities;

публичен финален клас KeyPressTester изпълнява Runnable {

public static void main (String [] args) изхвърля InterruptedException, InvocationTargetException {SwingUtilities.invokeAndWait (new KeyPressTester ()); }

@Override публично невалидно изпълнение () {frame = new JFrame ("KeyPress Tester");

frame.setSize (ново измерение (800, 600)); frame.setVisible (true); }

частна рамка JFrame; }

Стъпка 2

Променете метода run (), за да добавите KeyListener към рамката със следната реализация:

frame.addKeyListener (нов KeyListener () {

@Override public void keyTyped (KeyEvent e) {
}

@Override public void keyReleased (KeyEvent e) {
}

@Override public void keyPressed (KeyEvent e) {System.out.println ("Ключови символи:" + e.getKeyChar () + "; Ключов код:" + KeyEvent.getKeyText (e.getKeyCode ())); }});

Стъпка 3

Компилирайте и стартирайте програмата. Ако натиснете клавиш, когато рамката е фокусирана, трябва да видите конзолен изход, който описва натиснатия клавиш, включително текущия текст (ако има такъв) и текста на клавиша, като Shift, Ctrl, Backspace и др.