Bonjours, je vous présente d’abord mes classes :

- JPanelCaracteristique : étend un JPanel et contient un JLabel et un JSpinner,
- JPanelJoueur : étend un JPanel et contient plusieurs caractéristiques
- JPanelAction : qui étend un JPanel et contient deux joueurs,
- JPanelPhysique : qui étend un JPanelAction avec des surcharges spécifiques,
- JPanelCosmique : qui étend un JPanelAction avec des surcharges spécifiques,
- JPanelCombat : qui utilise JPanelPhysique et JPanelCosmique dans un JTabbedPane.

Dans la classe JPanelCaracteristique j’ai mis une méthode addActionListener(ActionListener p_action) qui applique l’action passer en paramètre au JSpinner.
Dans la classe JpanelJoueur, je fais suivre dans la méthode addActionListener(ActionListener p_action) l’action a toutes les caractéristique.
Dans la classe JPanelAction, j’ai mis une méthode addActionListener(ActionListener p_action) qui applique l’action au deux joueurs.
Dans les classes qui étendent JPanelAction, je ne touche pas à la méthode addActionListener.
Dans la classe JPanelCombat, je crée l’interface et j’ajoute les listeners et la tout marche.

Ainsi lorsque je modifie une caractéristique sur un joueur, ben je le sais et je peux recalculer ce qui est nécessaire.

Ca c'est bon
***********************************************************************


J’ai réitéré la même chose dans un panneau JpanelEffet qui contient également des JPanelcaracteristique. J’ai limite fais un copié-collé de la classe JPanelJoueur avec des modifications bien sûr !!!

Deux JPanelEffet sont ajouté en bas de JPanelAction (donc par extension à JPanelPhysique et Cosmique). Et la, il ne fonctionne pas.

Alors le résultat est aucune erreur, mais aucune action non plus.

Ce que je sais :
- on passe bien dans la méthode (affichage en entrant et en sortant correct),
- le listener marche si on ajoute directement l’action dans le constructeur (essaie temporaire)
- si on laisse l’action du constructeur + on ajoute l’action souhaité, c’est l’action constructeur qui apparaît (test avec deux affichages différents).


Pourquoi j’aurais ça ?

Merci