Bien que la plupart des besoins pour obtenir l'entrée d'utilisateur sont traitées assez facilement in Swing via des composants standard - par exemple , l'obtention texte via un composant JTextField - il est parfois nécessaire pour obtenir les touches exactes de l'utilisateur. Peut-être une combinaison de touches spécifique entraînera une certaine action, ou peut-être vous voulez éviter certaines combinaisons de touches d'avoir leur effet par défaut , par exemple en permettant que des caractères alphabétiques dans une zone de texte . Quel que soit le scénario , obtenir la clé l'utilisateur a appuyé est simple. Choses que vous devez
Java SDK
environnement de développement intégré , comme Eclipse ou NetBeans , recommandé mais pas obligatoire
Afficher plus Instructions
1
Créer une classe simple qui crée et affiche un JFrame pour l'instant:
java.awt.Dimension d'importation;
java.lang.reflect.InvocationTargetException d'importation;
javax.swing.JFrame d'importation; Photos
javax.swing.SwingUtilities d'importation ;
KeyPressTester public final class implémente Runnable {
public static void main (String [] args ) throws InterruptedException , InvocationTargetException {
SwingUtilities.invokeAndWait ( nouveau KeyPressTester ()); }
@ Override
public void run () {
de cadre = new JFrame ( " KeyPress Tester ");
frame.setSize ( nouvelle dimension (800 , 600) ) ;
frame.setVisible (true); }
< p> JFrame cadre privé;
}
2
Modifier la méthode run () pour ajouter un KeyListener au cadre avec la mise en œuvre suivante:
frame.addKeyListener ( nouveau KeyListener () {
@ Override public void
keyTyped ( KeyEvent e) { }
@ Override
publique annuler keyReleased ( KeyEvent e) { }
@ Override public void
keyPressed ( KeyEvent e) {
System.out.println (" Key caractère : "+ e.getKeyChar () +" , le code clé: "+ KeyEvent.getKeyText ( e.getKeyCode ())) ; }
});
< br > Hôtels 3
compiler et exécuter le programme. Si vous appuyez sur une touche lorsque le cadre a le focus, vous devriez voir la sortie console qui décrit la touche enfoncée , incluant à la fois le caractère réel de texte ( si disponible) et le texte de la clé, comme Shift, Ctrl , Backspace, etc Photos