Précédent   Forum du club des développeurs et IT Pro > Java > Interfaces Graphiques en Java > AWT/SWING
AWT/SWING
Forum d'entraide pour les API Swing et AWT. Avant de poster -> FAQ AWT/SWING
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 12/12/2012, 11h41   #1
somnix
Candidat au titre de Membre du Club
 
Homme
Développeur Java
Inscription : novembre 2009
Messages : 31
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Suisse

Informations professionnelles :
Activité : Développeur Java

Informations forums :
Inscription : novembre 2009
Messages : 31
Points : 10
Points : 10
Envoyer un message via Skype™ à somnix
Par défaut MessageBox en boucle

Bonjour,

En cliquant sur "ENTER" dans un JTextField,
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
tfSelectedModel.addKeyListener(
  new KeyListener(){
    public void keyReleased( KeyEvent e ){
      if( e.getKeyCode() == KeyEvent.VK_ENTER ){
        progressStart();
        new Thread(new Runnable() {
          public void run() {
            findMatchingModel();
            progressStop();
          }
        }).start();                            
      }
    }
    public void keyTyped(KeyEvent e) {}
    public void keyPressed(KeyEvent e) {}
  }
);
j'exécute la fonction findMatchingModel(), laquelle teste d'abord si le JTextField est vide ou pas.

S'il est vide, j'affiche un message demandant de sélectionner un modèle.
Code :
1
2
3
4
5
6
7
8
9
10
private void findMatchingModel() {
  String brand = tfSelectedBrand.getText();
  String model = tfSelectedModel.getText();
 
  if (model.length() < 1){
    dispMsg("ModelMatching", "select a model !");
    return;
  }
...
}
Le dispMsg est simplement :
Code :
1
2
3
private void dispMsg(String titles, String msg) {
  JOptionPane.showMessageDialog(panelMM, msg, titles, JOptionPane.ERROR_MESSAGE);
}
Ca fonctionne si je clique sur le bouton "OK", mais si j'appuye sur ENTER, le message s'affiche directement.

Quelqu'un saurait-il m'expliquer pourquoi l'event "ENTER" dans le message box n'est pas consommé et que je me retrouve dans une boucle d'affichage du message ?

Merci d'avance pour votre aide.
somnix est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 02h14.


 
 
 
 
Partenaires

Hébergement Web