Cum se detectează apăsările de taste din Java

Știind când un utilizator apasă o anumită cheie este importantă.

Pasul 1

Creați o clasă simplă care creează și afișează un JFrame în acest moment:

import java.awt.Dimension; import java.lang.reflect.InvocationTargetException;

import javax.swing.JFrame; import javax.swing.SwingUtilities;

clasa publica finala KeyPressTester implementeaza Runnable {

public static void principal (String [] args) aruncă InterruptedException, InvocationTargetException {SwingUtilities.invokeAndWait (new KeyPressTester ()); }

@ Veid public void public () {frame = nou JFrame ("KeyPress Tester");

frame.setSize (noua dimensiune (800, 600)); frame.setVisible (adevărat); }

cadru privat JFrame; }

Pasul 2

Modificați metoda run () pentru a adăuga un KeyListener la cadrul cu următoarea implementare:

frame.addKeyListener (noul KeyListener () {

@Override public void keyTyped (KeyEvent e) {
}

@Override public void keyReleased (KeyEvent e) {
}

@Orideră publică void keyPressed (KeyEvent e) {System.out.println ("Caracter cheie:" + e.getKeyChar () + "; Codul cheie:" + KeyEvent.getKeyText (e.getKeyCode ()); }});

Pasul 3

Compilați și rulați programul. Dacă apăsați o tastă atunci când cadrul se focalizează, ar trebui să vedeți o ieșire a consolei care descrie tasta apăsată, inclusiv caracterul curent (dacă este disponibil) și textul cheii, cum ar fi Shift, Ctrl, Backspace etc.