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 :

JComboBox editable et evenements


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Paniez
    Homme Profil pro
    Communication & Webservices
    Inscrit en
    Janvier 2003
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Communication & Webservices
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 186
    Par défaut JComboBox editable et evenements
    Bonjour,
    J'ai un petit souci avec les évènements de ma JComboBox.
    Pour faire rapide, j'ai donc une JComboBox editable avec un bouton à côté.
    J'aimerais, lorsque l'on tape quelque chose dans ma JComboBox, qu'il s'ajoute dans celle-ci et que lorsqu'on sélectionne un item, il s'ajoute à nouveau à la fin (ma JComboBox me sert d'historique).
    Le problème est que, dès que l'application est lancé, si on ajoute au clavier une entrée dans la JComboBox, cet entrée s'ajoute 2 fois ; en parallèle, si on commence à ajouter une entrée, et qu'on clique sur le bouton avant d'appuyer sur "enter" au niveau de la JComboBox, ça me provoque 2 exceptions.
    J'ai cherché avant de poster, mais je n'ai toujours pas de solution.
    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
     
    public class MaComboBox extends JComboBox implements ActionListener
    {
      JButton B1;
      public MaComboBox(JLabel MonLabel, JButton MonButton1)
      {
        super(new DefaultComboBoxModel());
        B1=MonButton1;
        addActionListener(this);
      }
     
      public void actionPerformed(ActionEvent ev)
      {
    	  String choix=((String)((JComboBox)ev.getSource()).getSelectedItem());
    	  System.out.println(choix);
    	  addItem(choix);
      }
     
     
    }
    Merci d'avance

  2. #2
    Membre confirmé Avatar de Paniez
    Homme Profil pro
    Communication & Webservices
    Inscrit en
    Janvier 2003
    Messages
    186
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Communication & Webservices
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2003
    Messages : 186
    Par défaut
    Bon, à force de chercher, j'ai trouvé :
    il suffisait, tout simplement, de mettre le gestionnaire d'évènement KeyListener non pas sur la jcombobox, mais sur la jcombobox.getEditor().getEditorComponent() (de tête, retrouvable dans la javadoc).
    Voili voulou, bonne journée

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

Discussions similaires

  1. JCombobox editable invisible
    Par Lady dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 14/11/2007, 15h59
  2. Définir le texte d'une JcomboBox editable
    Par dr23fr dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 06/07/2006, 17h20
  3. [JComboBox] Provoquer un evenement sur une combo
    Par Psykorel dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 16/05/2006, 15h23
  4. [JComboBox] editable ? setEditor ?
    Par lilou77 dans le forum Composants
    Réponses: 3
    Dernier message: 10/11/2005, 13h56
  5. [JComboBox] editable avec % affiché en fin de saisie
    Par tomburn dans le forum Composants
    Réponses: 6
    Dernier message: 27/04/2005, 16h41

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