Bonjour a tous,
Etant en train de realiser un petit programme en java (Swing/Awt) je suis confronter a un probleme que je ne comprends pas
Voila, j'arrive a faire tous ce que je veux .. cependant a un moment donnee du programme j'ai un bouton "Ajouter" qui permet l'ajout d'info dans un fichier XML.
L'ajout ce fais bien mais il se fait 3 fois .. en effet, a regarder un peu plus pres .. a chaque fois que je clique sur le bouton, c'est en realite 3 evenements qui sont leve .. et donc 3 ajouts qui se font dans le fichier XML :'(
Je vous montre un peu mon code
Voici le code avec lequel j'ajoute mon bouton a mon panel
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 /* Ajout du bouton ajouter */ if(ajouter==null) ajouter = new JButton("Ajouter au catalogue"); ajouter.addMouseListener(new AjoutRecetteMouseListener()); panel.add(ajouter,new GBC(0,5).setInsets(10));
Rq : GBC est pour gridBagConstraints .. c'est la classe qui est dans la faq pour faciliter l'utilisation du GridBag Layout
Voici mon listener .. La methode ajouterRecetteCatalogue de MenuEditorUtilities est juste la fonction qui ajoute la recette au fichier XML.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 private class AjoutRecetteMouseListener extends MouseAdapter { public void mouseClicked(MouseEvent e) { ArrayList<String> liste = new ArrayList<String>(); for(int i=0;i<dlm.getSize();i++) liste.add((String)dlm.get(i)); MenuEditorUtilities.ajouterRecetteCatalogue(titre.getText(),liste,preparation.getText()); } }
Cette fonction fonctionne parfaitement .. mais est a chaque fois appeller 3 fois a chaque clique sur le bouton ajouter ..
Je voulais donc savoir si quelqu'un a deja ete confronter a ce genre de situation .. car perso, je ne comprends pas pourquoi ca fais ca
merci d'avance
piff62
Partager