Bonjour,
Je cherche à savoir comment je peux faire pour annuler une entrée clavier...
Je ne cherche que la méthode...
Merci
Bonjour,
Je cherche à savoir comment je peux faire pour annuler une entrée clavier...
Je ne cherche que la méthode...
Merci
Par exemple, quand je tape sur une touche clavier (a ou b ou t ou espace...), je veux intercepter et annuler l'écriture de cette entrée...
J'espère m'etre mieux fait comprendre...
bref un truc qui remplace le 'null' suivant
e.setKeyChar(NULL) // null étant impossible
Ce que tu peux faire c'est tester l'entrée du clavier et si c'est un caractère que tu ne veux pas qui soit entré tu fais un backspace (effacement) grâce à \b
pas tres jolie mais fait l'affaire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 public void keyReleased(KeyEvent e) { try{ Robot r=new Robot(); if (e.getKeyCode()==KeyEvent.VK_1)r.keyPress(KeyEvent.VK_BACK_SPACE); }catch(Exception f){ } }
c'est pour le 1 que j'ai fait le travail.
C'est quel composant sur lequel tu veux intercepter les entrées?
Parce que typiquement si tu veux qu'aucune entrée ne se fasse ( à quoi servirait le composant alors.... ) tu peux faire simplement un setText("") après une touche pressée...
deplace le code que je t'ai donne vers keyPressed(),
c'est un peu olus beau
c pour un jtextarea!
Merci
Je dois donc utiliser le robot?
car faire tout simplement un setKeyChar('\b') ça morche po! :-(
Par contre avec le robot ça recule.... mais de 2 caractères!!!
c'est que t'as du faire le travail 2 fois.
ou bien t'as ajoute le KeyListener a ton composant 2 fois.
Ca irait pas de faire un setEditable(false) ?
Envoyé par pollux007seulement qq char, pas tout.Par exemple, quand je tape sur une touche clavier (a ou b ou t ou espace...)
Partager