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

Composants Java Discussion :

[JTextField] [KeyListener] [KeyEvent] Connaitre certaines infos...


Sujet :

Composants Java

  1. #1
    Membre habitué Avatar de Piolet
    Inscrit en
    Février 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 469
    Points : 160
    Points
    160
    Par défaut [JTextField] [KeyListener] [KeyEvent] Connaitre certaines infos...
    hello,

    voila j'aimerais savoir sur qu'elle touche j'ai tapé dans un textField par exemple via le KeyListener

    par exemple comment faire pour savoir que j'ai taper sur & et pas sur 1...

    ou encore sur ^ via Alt Gr + 9 plutot que ^ directement via la touche situé à la droite du P sur le clavier...

    en gros je sais que si je tape 1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    (int) evt.getKeyChar() == KeyEvent.VK_1
    //ou
    (int) evt.getKeyChar() == KeyEvent.VK_NUMPAD_1
    mais comment je fais pour savoir les autres touches via les mask SHIFT_DOWN_MASK, ALT_GRAPH_DOWN_MASK, CAPS_LOCK...etc...

    voila avez-vous une idée la dessus...

    merci d'avance
    Hum hum hum...géant vert ! ! !
    Le meilleur moyen de trouver c encore de chercher ! ! !

  2. #2
    Membre habitué Avatar de Piolet
    Inscrit en
    Février 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 469
    Points : 160
    Points
    160
    Par défaut
    juste pour le faire remonter
    Hum hum hum...géant vert ! ! !
    Le meilleur moyen de trouver c encore de chercher ! ! !

  3. #3
    Membre habitué Avatar de Piolet
    Inscrit en
    Février 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 469
    Points : 160
    Points
    160
    Par défaut
    bon je vais essayer de formuler ma question autrement...

    comment par exemple en appuyant sur une touche si à cette touche je peux associer un chiffre...

    dans le sens ou si je tape sur é bah logiquement le KeyChar lié à é plus le mask de SHIFT_DOWN_MASK bah ca devrait donné le KeyChar de 2 enfin ca c ma théorie...et visiblement ca n'a pas l'air de marché....

    en gros ca me permettrait de savoir si des que je tape sur une touche si cette touche est directement l'entier que je cherche, ou si cette touche associée à une combinaison (ALT, ou SHIFT etc...) deviendrait le chiffre que je cherche...comme ca je peux déterminer automatiquement le chiffre désiré...
    y a une méthode, c possible ou pas ?

    merci d'avance
    Hum hum hum...géant vert ! ! !
    Le meilleur moyen de trouver c encore de chercher ! ! !

  4. #4
    Membre régulier Avatar de jiraiya
    Inscrit en
    Mai 2002
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 100
    Points : 116
    Points
    116
    Par défaut
    bon à mon avis il faut que tu implémente ça en dur, si tu tapes & tu écris 1, si tu tapes é tu écris 2 etc..,

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2005
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 11
    Points : 11
    Points
    11
    Par défaut
    Tu définis un listener KeyTyped. Sur l'event tu fais

    Le caractère '&' te renvoie 38 et le caractère '1' te renvoie 49.
    Sur base de ca tu peux dire que si la valeur renvoyée est 38, tu lui envoie la valeur du caractère '1' (49).

    Je ne vois pas comment tu pourrais faire d'autre..
    Tu ne dois jamais le faire que pour 10 touches du clavier.

  6. #6
    Membre habitué Avatar de Piolet
    Inscrit en
    Février 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 469
    Points : 160
    Points
    160
    Par défaut
    oui j'ai pensé a faire ca...mais le problème se pose pour le 9 et ATL_GRAPH...a savoir le caractère ^ que l'on peut aussi avoir sans passé par la touche du haut, mais en tapant sur la touche a gauche du P...et c la le problème si je tape sur cette touche avec votre méthode je vais obtenir un 9 alors que normalement cette touche plus SHIFT est égal a ¨ et n'est égal a rien avec ALT_GRAPH...

    vous voyez mon problème ou pas
    Hum hum hum...géant vert ! ! !
    Le meilleur moyen de trouver c encore de chercher ! ! !

  7. #7
    Membre à l'essai
    Inscrit en
    Avril 2005
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 11
    Points : 11
    Points
    11
    Par défaut
    Effectivement. Et c'est sans compter sur les différentes configuration du clavier. Les caractères secondaires des touches numériques(hors clavier numérique) varient en fonction de la config. Si tu veux utiliser ces touches, tu dois d'abord tester la config du clavier. C'est de la folie à gérer.
    Pourquoi ne pas opter pour ne permettre que les chiffres avec affichage de messages pour avertir les users ?

  8. #8
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,

    Piolet, je ne comprend pas l'intérêt de tout cela...
    Et comme le précise assomniak ca risque de te poser des problèmes selon les types de clavier (tout le monde n'a pas des claviers azerty-français).

    a++

  9. #9
    Membre habitué Avatar de Piolet
    Inscrit en
    Février 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 469
    Points : 160
    Points
    160
    Par défaut
    oui effectivement...mais dans mon cas la plus grande partie des utilisateurs auront des claviers standards...mais c vrai qu'avec le temps cette option pourrait poser problème effectivement...
    je crois que je vais en rester la effectivement
    Hum hum hum...géant vert ! ! !
    Le meilleur moyen de trouver c encore de chercher ! ! !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] [Données] - Filtre manquant certaines infos
    Par GuyRo dans le forum Excel
    Réponses: 2
    Dernier message: 14/10/2010, 09h22
  2. GenBank et récupération de certaines infos
    Par angioedema dans le forum Bioinformatique
    Réponses: 8
    Dernier message: 30/11/2009, 09h48
  3. JTextField n'acceptant que certaines valeurs
    Par paul62 dans le forum Composants
    Réponses: 2
    Dernier message: 06/11/2007, 08h53
  4. Réponses: 3
    Dernier message: 06/12/2006, 11h44
  5. Connaitre les infos de la base de données
    Par cedric31 dans le forum Bases de données
    Réponses: 3
    Dernier message: 06/07/2004, 12h59

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