Bonsoir à tous,
Je suis confronté au problème suivant :
J'ai un programme qui est composé d'un menu (une classe étendue de JPanel à gauche), et d'un affichage principal (une classe étendue de JPanel à droite).
Une classe "Gestionnaire" principale va gérer le tout, en créant des instances de ces classes.
Lors de clics sur boutons du menu, on va décider d'afficher telle ou telle classe étendue de JPanel dans la partie de droite.
Imaginons qu'on ai un clic sur menu qui affiche une classe JPanel d'identification de l'administrateur. Il entre son login et son mot de passe. Au clic du bouton "Identifier", une action se produit (interne à la classe JPanel d'identification). L'action teste alors si l'utilisateur est reconnue ou pas. En cas de succès, le menu (classe JPanel de gauche) et l'affichage principal (classe JPanel de droite) doivent être changés dans le Gestionnaire principal.
Mais comment savoir que l'action sur "Identifier" à générer un succès dans mon Gestionnaire principal, au moment du clic ??
Bien entendu, il est important qu'il ne connaissent pas l'action, c'est à dire que l'action soit interne à la classe JPanel d'identification de l'administrateur, qu'elle ne soit créer qu'à l'appel de cette classe par le Gestionnaire.
Je pensais à utiliser Observer ou Observable, mais mes classes sont déjà étendues de JPanel, ce qui fou un bordel monstre si je dois étendre à Observer.
J'ai pensé aux threads également, mais vu le nombre de fenêtres, d'actions sur boutons, etc., ça ne sera pas possible...
C'est une question classique pour un programme qui à un menu et des affiches différentes en fonction des boutons du menu et des actions intérieures aux affichages !! Qu'en pensez-vous ??
Merci.
Pirokkk
Partager