Bonjour,
Je souhaiterais savoir comment vous procédez habituellement pour passer d'une vue à une autre.
Par exemple on est dans la vue1, laquelle contient un Bouton1 censé ouvrir une autre fenêtre : la vue2.
Comment gérez-vous cela?
Moi j'ai commencé comme suit mais je me retrouve bloqué!!
Dans le main() je commence par:
IModele modele=new modeleConcret();
//Avec modeleConcret implémentant IModele
IVue vue1=new vueConcrete();
//Avec vueConcrete implémentant IVue
IController controleur1=new controllerConcret( vue1, modele );
//Avec controllerConcret implémentant IController
Ensuite dans le constructeur controllerConcret( IVue vue, IModele modele) j'ai:
this.modele=modele;
this.vue=vue;
this.vue.setController(this); //< Une IVue attend pour controller un IController
//----------
Quand l'utilisateur cliquera sur le fameux Bouton1 de la vue1, alors le contrôleur controleur1 en sera informé et alors là : je ne sais pas ce que doit faire ce contrôleur dés lors.... pour que la vue2 soit ouverte et associée à un autre contrôleur controller2 ??? Je suis coincé je ne sais pas!
- Qui doit instancier la vue2 ?
- Qui doit instancier le contrôleur pour cette dernière?
Sachant qu'idéalement je souhaiterais au final avoir des instanciations de la forme:
IVueBis vue2=new vueConcreteBis();
IControllerBis controleur2=new controllerConcretBis( vue2, modele );
Mais où écrire ça?
Qui est censé connaître l'interface IVueBis et la classe vueConcreteBis?
Qui est censé connaître l'interface IControllerBis et la classe controllerConcretBis ?
Si vous aviez des réponses, des solutions, ou si vous voulez bien me faire part de vos pratiques habituelles ça me serait d'un grand secours....!
Merci à tous et toutes.
Partager