[swing][JList] rafraichir l'affichage quand le model change.
2 réponses
julien balas
Bonjour,
je suis en train de developper une petite appli pour me faire la main
sur MVC et swing et je bute sur un petit pb enervant.
La partie qui me pose pb pourrait etre par exemple l'abonnement a un
newsgroup.
J'ai un obj Model qui est une liste de NewsGroups, avec un etat abonné
ou pas pour chacun des groupe.
J'ai 2 Jlist, Une qui affiche les newsgroups auxquel ont est abonné, et
une autre qui affiche ceux auquels on n'est pas abonnée.
Pour ca j'ai deux obj intermediaire qui etendent "AbstractListModel", et
qui servent chacun a remplir une JList.
Avec 2 boutons "abonner" et "desabonner", j'envoi des evenement au
controleur, qui fait suivre au model.
Le model modifie bien l'etat des groups.
Pour que mes "AbstractListModel" soit informé des modifs, j'ai mis mon
model "observable" et mes AbstractListModel "observer".
Avec un petit System.out, je vois qu'effectivement mes AbstractListModel
sont informé des changements du model et que les données qu'ils ont sont
mise a jour.
MAIS je n'arrive pas a faire rafraichir mon interface graphique, mes JList.
Faut-il que je mette en place un autre etage d'observer/observable entre
les abstractListModel et les JList ?
Faut-il abonner mes JList aux modifs du model (et pas les
AbstractListModel)?
Les AbstractListModel doivent-ils forcer le repaint des composants
graphique?
Dans plusieurs exemples de SUN, c'est la vue qui indique au ListModel de
supprimer ou ajouter des lignes, je trouve ca bizarre...
http://java.sun.com/docs/books/tutorial/uiswing/components/list.html#mutable
http://java.sun.com/docs/books/tutorial/uiswing/events/example-1dot4/ListDataEventDemo.java
Est-ce parceque dans leurs exemple le model et le ListModel sont confondu?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Simon OUALID
julien balas wrote:
Les AbstractListModel doivent-ils forcer le repaint des composants graphique?
N'aurais tu pas oublié d'appeler fireIntervalAdded de AbstractListModel après avoir modifié ton modèle ? Normalement c'est lui qui se charge de la mise à jour graphique.
Les AbstractListModel doivent-ils forcer le repaint des composants
graphique?
N'aurais tu pas oublié d'appeler fireIntervalAdded de AbstractListModel
après avoir modifié ton modèle ? Normalement c'est lui qui se charge de
la mise à jour graphique.
Les AbstractListModel doivent-ils forcer le repaint des composants graphique?
N'aurais tu pas oublié d'appeler fireIntervalAdded de AbstractListModel après avoir modifié ton modèle ? Normalement c'est lui qui se charge de la mise à jour graphique.
Les AbstractListModel doivent-ils forcer le repaint des composants graphique?
N'aurais tu pas oublié d'appeler fireIntervalAdded de AbstractListModel après avoir modifié ton modèle ? Normalement c'est lui qui se charge de la mise à jour graphique.
est ce que c'est correcte vis a vis du model MVC ?
-- Julien
Simon OUALID wrote:
julien balas wrote:
Les AbstractListModel doivent-ils forcer le repaint des composants
graphique?
N'aurais tu pas oublié d'appeler fireIntervalAdded de AbstractListModel
après avoir modifié ton modèle ? Normalement c'est lui qui se charge de
la mise à jour graphique.
Les AbstractListModel doivent-ils forcer le repaint des composants graphique?
N'aurais tu pas oublié d'appeler fireIntervalAdded de AbstractListModel après avoir modifié ton modèle ? Normalement c'est lui qui se charge de la mise à jour graphique.