Полагаю, вы хотите знать, печатает ли конкретная клавиша на самом деле символ или это какой-то невидимый управляющий символ или что-то еще:
в этом случае вы можете проверить набранный ключ в KeyEvent, который передается в реализованные методы KeyListener:
этот быстрый пример должен работать, хотя я его не проверял. Он создает новую строку на символе, возвращаемом KeyEvent, затем вызывает метод length () для проверки, если символ создал читаемый символ в строке. вроде хаки, но я надеюсь, что вы понимаете суть этого
public void keyReleased(KeyEvent ke){
if (new String(ke.getKeyChar()).length() == 0){
// do something important...
}
}
Альтернативы вы можете использовать ke.getKeyCode()
и проверить статические поля в KeyEvent (VK_F12, VK_ENTER ...)
проверьте здесь:
http://docs.oracle.com/javase/6/docs/api/java/awt/event/KeyEvent.html