Java: Inscrivez-vous <ENTER> touche appuyez sur JTextPane
Je suis en train de faire une application avec java qui a un JTextPane. Je veux être en mesure d'exécuter du code lors de la entrée touche est enfoncée (ou lorsque l'utilisateur passe à la ligne suivante). J'ai regardé sur le web et ne trouve pas de solution. Serait-il mieux de s'attaquer à ce avec C#? Si non, comment puis-je enregistrer la touche Entrée dans le JTextPane de keyTyped() de l'événement? Si C# est une bonne option, comment pourrais-je le faire en C#?
Ici est une solution qui me semblait...mais il n'a pas
//Event triggered when a key is typed
private void keyTyped(java.awt.event.KeyEvent evt) {
int key = evt.getKeyCode();
if (key == KeyEvent.VK_ENTER) {
Toolkit.getDefaultToolkit().beep();
System.out.println("ENTER pressed");
}
}
Pourquoi l'exemple ci-dessus ne fonctionne pas, car n'importe quelle touche, je presse, je reçois un mot de code de 0. Je préfère une solution à ce problème en Java, mais C# serait tout aussi bien, peut-être mieux. Aussi, s'il vous plaît essayer de répondre à la question avec des exemples et non pas des liens(à moins que vous vraiment besoin). Merci!
À partir de la documentation Javadoc pour getKeyCode():
For KEY_TYPED events, the keyCode is VK_UNDEFINED.
Il a été documentée depuis au moins 1.3.OriginalL'auteur Mohammad Adib | 2011-09-16
Vous devez vous connecter pour publier un commentaire.
Une solution consiste à ajouter une clé de liaison sur la textpane. par exemple,
vrai, mais l'exigence n'est pas entièrement clair, peut être a) remplacer le comportement par défaut ou b) ajouter le comportement par défaut Pour le b), il suffit de l'envelopper par défaut, le réglage et déclenchement de la coutume
OriginalL'auteur Hovercraft Full Of Eels
Cette réponse est dans le cas où on jamais vue sur ce fil
J'ai eu la même chose que M. Mohamed Adib. Ainsi, au lieu de l'aide de
(evt.getKeyCode()==evt.VK_ENTER)
J'utilise
(evt.getKeyChar()=='\n')
À partir de la documentation Javadoc pour getKeyCode():
For KEY_TYPED events, the keyCode is VK_UNDEFINED.
Il a été documentée depuis au moins 1.3. Je suis en supposant que l'OP n'a jamais lu les docs.OriginalL'auteur PaRaD0X
Je suis à la recherche pour ENTRER la clé dans le champ mot de passe, pour le lancement de la méthode de login lors de l'ENTRÉE a été pressée. Le code ci-dessous s'affichera dans la console le mot de code. Après l'exécution du programme et en tapant quelques tihngs dans la boîte, j'ai découvert pour ENTRER la clé c'est le code 13.
Si vous êtes à la recherche d'une seule touche, vous pouvez toujours être un peu paresseux et éviter d'apprendre de nouvelles choses sur les touches, à l'aide de cette méthode. Le plaisir commence lors de l'ajout de touches CTRL+[Lettre] de raccourcis, mais c'est pour une autre discussion.
OriginalL'auteur Louis Papaloizou