didoux95
Messages postés845Date d'inscriptionmardi 25 avril 2006StatutMembreDernière intervention 1 août 2017
-
20 mars 2008 à 20:48
didoux95
Messages postés845Date d'inscriptionmardi 25 avril 2006StatutMembreDerniè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...
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 20 mars 2008 à 21:15
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
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 ..."