Groups | Search | Server Info | Keyboard shortcuts | Login | Register
Groups > fr.comp.lang.java > #1652
| From | Yliur <yliur@free.fr> |
|---|---|
| Newsgroups | fr.comp.lang.java |
| Subject | Re: Question sur les DefaultListModel |
| Date | 2018-02-06 17:22 +0100 |
| Organization | Groupes francophones par TrigoFACILE |
| Message-ID | <20180206172238.132467e5@free.fr> (permalink) |
| References | <5a791646$0$3715$426a74cc@news.free.fr> <20180206061045.129cf5ec@free.fr> <5a7949b7$0$9266$426a74cc@news.free.fr> |
Le 06 Feb 2018 06:22:47 GMT
jp <bloiiing.invalid@yahoo.com> a écrit :
> Le Tue, 06 Feb 2018 06:10:45 +0100, Yliur a écrit :
>
>
> > - Soit tu veux que les données de la liste soient modifiées
> > directement via l'interface, auquel cas tu construis un objet
> > de modèle d'une classe à toi qui en fait va modifier ta liste
> > (ArrayList) dès que les modifications sont appliquées dans
> > l'interface.
>
> Merci de ta réponse. J'ai bien compris les différentes possibilités,
> mais est-ce que tu pourrais préciser un peu plus le point ci-dessus?
> Par objet de modèle d'une classe entends-tu qu'il faut que
> j'implémente ma propre version de DefaultListModel à partir de
> l'interface ListModel?
Je voulais dire "tu construis un objet de modèle sous la forme d'une
classe à toi".
Donc tu définis une classe qui implémente ListModel et tu passeras à la
JList un objet de cette classe.
Dans cette classe tu aurais un attribut qui référencerait la liste
réelle, à passer en paramètre au constructeur, et des méthodes qui
redirigent vers cette liste.
Pour ça tu peux hériter de AbstractListModel, qui réalise déjà certaines
des opérations annexes (gestion des écouteurs d'événements, ...), et
implémenter le reste
Tu implémentes ça comme le fait DefaultListModel, sauf que c'est une
référence à une liste externe. Donc tu dois implémenter la même liste de
méthodes que tu trouveras dans la doc de DefaultListModel. C'est
vaguement long mais ça devrait être assez simple, de ce type :
public void clear ()
{
this.listeDonnees.clear() ;
}
Si tu utilises Eclipse ou autre environnement de développement intégré,
il se peut qu'il y ait une option pour générer une bonne partie de ce
code. Par exemple dans Eclipse voir de ce côté : clic droit sur le code
source de la classe créée -> Source... -> Generate delegate methods...
-> sélecionner celles qui t'intéressent.
Back to fr.comp.lang.java | Previous | Next — Previous in thread | Next in thread | Find similar
Question sur les DefaultListModel jp <bloiiing.invalid@yahoo.com> - 2018-02-06 02:43 +0000
Re: Question sur les DefaultListModel Yliur <yliur@free.fr> - 2018-02-06 06:10 +0100
Re: Question sur les DefaultListModel jp <bloiiing.invalid@yahoo.com> - 2018-02-06 06:22 +0000
Re: Question sur les DefaultListModel Yliur <yliur@free.fr> - 2018-02-06 17:22 +0100
Re: Question sur les DefaultListModel jp <bloiiing.invalid@yahoo.com> - 2018-02-07 03:41 +0000
csiph-web