Kann in JavaFX nicht auf KeyEvent hören

8

Ich möchte, dass mein JavaFX-Programm auf Tastaturereignisse reagiert.
Ich habe versucht, Listener zum root Pane , zum obersten Pane hinzuzufügen, aber es reagiert nicht auf Ereignisse!
Hier ist mein Code:

%Vor%

Warum funktioniert es nicht, wichtige Ereignisse? Mache ich hier etwas falsch? Um sicher zu sein, funktionieren Mausereignisse mit demselben Code.

    
Chechulin 30.05.2013, 11:30
quelle

3 Antworten

12

Eine Lösung besteht darin, der Szene einen Ereignis-Listener hinzuzufügen. Da Layouts standardmäßig keinen Fokus haben, reagieren sie nicht auf KeyEvents. KeyEvents werden zuerst an den fokussierten Knoten übergeben.

Eine andere Lösung besteht darin, Ihren Bereich fokussierbar zu machen:

%Vor%     
Alexander Kirov 30.05.2013, 11:52
quelle
1

((KeyEvent)t).getCharacter() verwenden Sie stattdessen ((KeyEvent)e).getText()

    
Elmer Duron 13.07.2017 19:39
quelle
0

stellen Sie auch sicher, dass Sie das korrekte KeyEvent wie in

importieren

importieren Sie javafx.scene.input.KeyEvent;

und nicht das KeyEvent von awt

    
PCannon 20.07.2015 03:38
quelle