IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

Comment annuler une entrée clavier?


Sujet :

AWT/Swing Java

  1. #1
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    91
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 91
    Points : 48
    Points
    48
    Par défaut Comment annuler une entrée clavier?
    Bonjour,
    Je cherche à savoir comment je peux faire pour annuler une entrée clavier...
    Je ne cherche que la méthode...
    Merci

  2. #2
    Membre averti Avatar de let_me_in
    Inscrit en
    Mai 2005
    Messages
    441
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 441
    Points : 437
    Points
    437
    Par défaut
    et ca veut dire???

  3. #3
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    91
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 91
    Points : 48
    Points
    48
    Par défaut
    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

  4. #4
    Membre éclairé Avatar de Pollux
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    706
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 706
    Points : 680
    Points
    680
    Par défaut
    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

  5. #5
    Membre averti Avatar de let_me_in
    Inscrit en
    Mai 2005
    Messages
    441
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 441
    Points : 437
    Points
    437
    Par défaut
    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){
    	 	}
    	 }
    pas tres jolie mais fait l'affaire.
    c'est pour le 1 que j'ai fait le travail.

  6. #6
    Membre éclairé Avatar de Pollux
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    706
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 706
    Points : 680
    Points
    680
    Par défaut
    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...

  7. #7
    Membre averti Avatar de let_me_in
    Inscrit en
    Mai 2005
    Messages
    441
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 441
    Points : 437
    Points
    437
    Par défaut
    deplace le code que je t'ai donne vers keyPressed(),
    c'est un peu olus beau

  8. #8
    Membre du Club
    Inscrit en
    Mai 2004
    Messages
    91
    Détails du profil
    Informations forums :
    Inscription : Mai 2004
    Messages : 91
    Points : 48
    Points
    48
    Par défaut
    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!!!


  9. #9
    Membre averti Avatar de let_me_in
    Inscrit en
    Mai 2005
    Messages
    441
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 441
    Points : 437
    Points
    437
    Par défaut
    c'est que t'as du faire le travail 2 fois.
    ou bien t'as ajoute le KeyListener a ton composant 2 fois.

  10. #10
    Membre éclairé Avatar de Pollux
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    706
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2005
    Messages : 706
    Points : 680
    Points
    680
    Par défaut
    Ca irait pas de faire un setEditable(false) ?

  11. #11
    Membre averti Avatar de let_me_in
    Inscrit en
    Mai 2005
    Messages
    441
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 441
    Points : 437
    Points
    437
    Par défaut
    Citation Envoyé par pollux007
    Ca irait pas de faire un setEditable(false) ?
    Par exemple, quand je tape sur une touche clavier (a ou b ou t ou espace...)
    seulement qq char, pas tout.

Discussions similaires

  1. Comment lire une entrée clavier pour une variable StringBuffer ?
    Par Haktarus dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 16/06/2014, 16h19
  2. Comment annuler une requête
    Par pierrot67 dans le forum Bases de données
    Réponses: 3
    Dernier message: 06/02/2007, 11h10
  3. Réponses: 4
    Dernier message: 03/05/2006, 10h59
  4. Comment annuler une opération en cours ?
    Par Sydaze dans le forum Langage
    Réponses: 17
    Dernier message: 16/11/2005, 10h14
  5. [Info]comment annuler une Externalization string?
    Par car dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 17/04/2005, 10h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo