Les partenaires publicitaires:

Comment capturer des touches en Java

Capture d'une frappe en Java est pas tout à fait la même chose que d'accepter l'entrée au clavier. Dans la plupart des situations, un programme accepte la saisie de l'utilisateur à partir du clavier sous la forme de caractères imprimables. Lettres, chiffres et symboles sont lus dans le programme et stockés, fait écho à revenir à l'écran, ou utilisés pour initier une autre action au sein du programme. Lors de la capture une séquence de touches pour une clé de non-impression, les touches fléchées et la touche de tabulation par exemple, l'entrée doit être interprété par le programme, et transmis à la bibliothèque d'entrée / sortie appropriée pour la manipulation.

Instructions

  1. Créer une fonction pour détecter une pression sur une touche, et affecter une variable à suivre l'événement:

    keyDown publique booléenne (événement e, clé int) {

    Une variable booléenne renvoie uniquement une valeur de vrai ou faux. L'état de ce type de variable par défaut est false. Appuyer sur une touche modifie la valeur à true. Cette fonction renvoie également la valeur ASCII de la touche qui est pressée, et stocke cette valeur dans la variable entière "clé."

  2. Déterminer si la touche enfoncée est un caractère imprimable:

    if (keygt; 31 && keylt; 127) {




    Caractères ASCII imprimables ont des valeurs entre 31 et 127. Toutes les autres valeurs à partir du clavier nécessitent un traitement spécial.

  3. Passez la valeur de la clé pour le programme si elle est un caractère imprimable:

    retourner validateText (clé) -

    }

  4. Informer le programme appelant que la clé ne peut être imprimé et nécessite un traitement spécial si elle tombe en dehors des valeurs ASCII spécifiés:

    retourner faussement

    }

Conseils & Avertissements

  • Lorsque la valeur false est renvoyée au programme appelant, la fonction keyDown () transmet la valeur de la clé de la fonction superclasse contenue dans le Java Abstract Window Toolkit (AWT) bibliothèque de classe par défaut qui est responsable du traitement des touches non-impression.
  • L'ensemble du segment de code:
  • keyDown publique booléenne (événement e, clé int) {
  • si (clé gt; 31 && clé lt; 127) {
  • retourner validateText (clé) -
  • }
  • retourner faussement
» » » » Comment capturer des touches en Java