Listener et Event [Résolu]

Messages postés
845
Date d'inscription
mardi 25 avril 2006
Statut
Membre
Dernière intervention
1 août 2017
- - Dernière réponse : didoux95
Messages postés
845
Date d'inscription
mardi 25 avril 2006
Statut
Membre
Dernière intervention
1 août 2017
- 21 mars 2008 à 18:21
Bonjour à tous.
J'ai deux classes : une classe A et une classe B organisées de cette manière :

...
public A () {
   B b = new B();
}
...

Comment est ce que je pourrais indiquer à A qu'il y a eu une modification dans B (ce serait B qui génèrerait un évènement).
J'avais pensé à utiliser les Listener et les Event mais ..uhm ..  j'ai pas trouvé de modèles "par défaut". Comment est ce que je dois (ou peux) faire pour que B génère un évènement .. ? Pour que la classe A récupère l'évènement, il me suffira d'ajouter un EventListener à B...

Merci.
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
73
3
Merci
Salut,

C'est pourtant très simple de faire un listener :

Tu fais une interface qui contient les fonctions de tes "events" :

interface Event {
    public void event();
}

dans ta classe B, tu lui mets les fonctions addEvent(Event e) et removeEvent(Event e).

et à chaque fois que tu veux déclencher ton événement, il te suffit de faire : e.event();

C'est pas plus compliqué ! Pour des exemples, tu peux regarder mes sources, je m'en sert dans de nombreuses sources.
______________________________________
DarK Sidious

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 126 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_DARKSIDIOUS
Messages postés
5336
Date d'inscription
dimanche 4 mai 2003
Statut
Modérateur
Dernière intervention
17 juillet 2019
82
3
Merci
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8" />
<title>
</title>
<meta name="GENERATOR" content="OpenOffice.org 2.4 (Linux)" />
<style type="text/css">
<!--
@page { size: 21cm 29.7cm; margin: 2cm }
P { margin-bottom: 0.21cm }
-->
</style>
Salut,

si tu veux tu peux
réutiliser l'event javax.swing.event.ChangeListener qui est prévu
pour les notifications en cas de changement d'état d'un composant
(ça évite de réinventer la roue ^^).











------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 126 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Twinuts
Messages postés
845
Date d'inscription
mardi 25 avril 2006
Statut
Membre
Dernière intervention
1 août 2017
1
0
Merci
Merci à tout les deux.
J'ai finalement créer mes propres classes. Je me suis inspiré de javax.swing.event.ChangeListener.

merci.
Commenter la réponse de didoux95