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 :

escape & JDialog


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut Comment intercepter un evènement clavier
    salut à tous,
    je voudrais que quand je presse la touche ESC, la JDialog se referme seulement je n'ai pas l'impression que mon code marche.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    public class MaDialog extends JDialog{
    public MaDialog(JFrame frame){
    super(frame);
    this.getGlassPane().addKeyListener(
                    new KeyAdapter() {
                        public void keyPressed(KeyEvent e) {
                            int code = e.getKeyCode ();
                            if (code == KeyEvent.VK_ESCAPE){
                                CreationPane.this.dispose();
                            }
                            e.consume();
                        }
     
                    }
            );
     
            this.setBounds(300, 10, 500, 760);
            this.setVisible(true);
     
        }
    si quelqu'un voit le problème...
    Peut peut-être que je n'ecoute pas le bon Pane
    merci d'avance

  2. #2
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut
    Je tien à preciser que j'ai regardé dans la FAQ, sur internet sans y trouver quel est le problème de mon code. Alors si quelqu'un pouvait m'aider je lui en serait reconnaissant

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2007
    Messages
    156
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Août 2007
    Messages : 156
    Par défaut
    Bonjour,

    Par hasard, il ne faudrait pasque tu ajoute ton écouteur sur ta JDialog directement plutot que surle GlassPane.


  4. #4
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut
    j'ai déja essayer mais je ça ne marche pas mieux. Je me demande s'il n'y a pas des spécification lié au JDialog pour les evenements. Normalement, il me semble le glassPane(panneau placer au dessus du contentPane et du JMenuBar) sert à intercepter tout les evenement de la fenetre mais...

  5. #5
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    A pire utilises un AWTEventListener, tu seras sur de chopper l'intégralité des events de ton appli.

    ++

  6. #6
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut
    J'ai trouvé la methode
    Toolkit.getDefaultToolkit().addAWTEventListener(app_EcouteurEventClavier, AWTEvent.KEY_EVENT_MASK);
    Mais je ne sais pas vraiment comment ça marche.
    Peut tu me mettre un petit exemple pour voir comment on filtre l'evenement et on le gère.

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

Discussions similaires

  1. [debutant] Gérer escape sur un JDialog
    Par debutant java dans le forum Agents de placement/Fenêtres
    Réponses: 5
    Dernier message: 01/09/2004, 17h45
  2. [JDialog] Modification dans une fenêtre
    Par cefabien dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 01/10/2003, 13h18
  3. Lire rapidement la touche Escape
    Par BernardLimont dans le forum Assembleur
    Réponses: 11
    Dernier message: 16/07/2003, 21h09
  4. Récuperer les icons des JDialog
    Par Pro_Fete dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 17/04/2003, 13h00

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