Bouton annuler : pattern memento - Java - Programmation
Marsh Posté le 25-11-2013 à 19:58:05
Sur chaque action, avant d'opérer la modification, tu stockes :
- la liste List<String>
- un memo String, par exemple "retirer mot mmm' ou "tri croissant"
Donc tu crées un objet Etape avec ces deux attributs.
Et tu enrichis une ArrayList de Etape au fur et à mesure des actions.
Ensuite, en présentant les Etape.memo des étapes dans un ComboBox, le bouton annuler permet de recharger la Etape.list
Marsh Posté le 26-11-2013 à 14:40:16
Je pense être sur la bonne piste. Néanmoins, je suis confronté à un bug sur le nombre d'occurrences :
en gras les modif
Code :
|
Quand je fais une recherche dans ma liste de mot d'un terme, il me sort bien "true" en retour (signe qu'il l'a trouvé) et si je demande son nombre d'occurrences, c'est bien le bon nombre.
Si je retire ce terme, en faisant une recherche, j'obtiens un "false" en retour, signe qu'il a bien été retiré et 0 en occurrence.
Quand j'annule, il réapparaît bien dans ma liste, je le vois, si je fais une nouvelle recherche, j'ai un "true", mais toujours 0 en occurrence.
Où est l'erreur ?
Merci d'avance
Marsh Posté le 25-11-2013 à 15:34:55
bonjour,
Je suis quelque peu coincé sur une utilisation d'un rollback sur une petite appli faite en java.
J'ai 3 classes :
-> ChapitreJava qui contient 3 méthodes :
- List<String> listeDesMots() qui va me retourner une liste de mots à partir d'une constante
- Map<String, Integer> occurrencesDesMots(List<String> liste) qui retourne une liste de couples <String,Integer>, à chaque mot de la liste est associé son nombre d'occurrences
- final String CHAPITRE2 =(....) : mon texte à analyser
-> AppletListe : mon applet
C'est surtout sur la 3e classe (IHMListe) que je bloque. Le but est de construire une IHM où je peux manipuler le texte : taper un mot dans un champ de saisie et regarder si ce mot est présent, compter le nombre d'occurrences de ce mot, voire le retirer du texte. De même, je peux classer par ordre croissant suivant les occurrences les mots du texte (et ordre décroissant). Jusque là, ça fonctionne bien. Là où je bloque, c'est dans l'utilisation d'un bouton annuler me permettant de faire un rollback sur le tri, ou le retrait du mot. Visiblement, le pattern Memento pourrait y répondre mais je ne vois pas comment faire.
voici le code source de cette classe IHMListe :
Message édité par roswellentongues le 25-11-2013 à 15:37:30