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 :

Intercepter le VK_TAB d'un JTextPane


Sujet :

Composants Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    lvr
    lvr est déconnecté
    Membre éclairé Avatar de lvr
    Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Avril 2006
    Messages
    920
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Avril 2006
    Messages : 920
    Par défaut Intercepter le VK_TAB d'un JTextPane
    Bonjour,

    Conformément au tuto sur le keybinding j'ai écrit ceci pour mon JTextPane:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    txtTags.getActionMap().put("autoselect",new AbstractAction() {
        public void actionPerformed(ActionEvent e) {
            System.out.println(">>>TAB");
        }
    });
     
    txtTags.getInputMap().put(KeyStroke.getKeyStroke(Keyevent.VK_ENTER,0),"autoselect");
    txtTags.getInputMap().put(KeyStroke.getKeyStroke(Keyevent.VK_TAB,0),"autoselect");
    Et ça ne marche pas.
    Quand j'appuie sur TAB ou ENTER mon dialogue se ferme, car il y a par défaut un keybinding vers le bouton OK de la fenêtre.

    Pourtant cela me semble ok, puisque la doc explique que cela fonctionne par ordre de priorité et que si un InputMap WHEN_FOCUSED est précisé, l'action associée a précédence sur les autres actions.

    Je vois bien encore la piste du "consume()", mais je ne vois pas où le placer dans un ActionEvent !!

    Une idée pour m'aider à sortir de là ?

    Merci,

  2. #2
    lvr
    lvr est déconnecté
    Membre éclairé Avatar de lvr
    Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Avril 2006
    Messages
    920
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Avril 2006
    Messages : 920
    Par défaut
    Correction: si je vire le InputMap().put(...VK_ENTER...) ça fonctionne !!!
    On ne peut pas avoir deux KeyStrokes provocant la même Action ?

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

Discussions similaires

  1. Interception du signal SIGINT
    Par macleod dans le forum MFC
    Réponses: 2
    Dernier message: 01/07/2003, 18h39
  2. Interception des commandes in et out
    Par KDD dans le forum x86 16-bits
    Réponses: 13
    Dernier message: 18/12/2002, 16h55
  3. Comment récupérer le VK_TAB ?
    Par henderson dans le forum C++Builder
    Réponses: 5
    Dernier message: 11/12/2002, 11h32
  4. [VB6] Intercepter le printscreen
    Par Rami dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 22/10/2002, 18h21
  5. [VB6] Interception des évènement Copier/Couper/Coller
    Par youtch dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 18/10/2002, 17h09

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