Bonjour tout le monde,
J'essaye actuellement de représenter une classe relativement complexe dans une fenêtre QT avec différents widgets.
J'ai cru comprendre que, pour faire les choses proprement, il fallait passer par un modèle MVC. Et c'est là que je bloque..
Dans les tutoriels que l'on trouve sur internet, il est souvent expliqué comment on fait interagir des modèles et des vues (en utilisant éventuellement des delegates personnalisés si l'on cherche à aller vers l'exotisme).
Mon problème est que je n'arrive pas à faire le lien entre ma classe et mon modèle...
Supposons par exemple que j'ai programmé les classes Vehicule et Garage :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 class Vehicule { public: //fonctions membres : Accesseurs+constructeurs+ editeurs... protected: //données memebres int mPrix, mAnnee; QString mPlaqueImmatriculation, mIdentifiant; };
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 class Garage { public: //fonctions membres : Accesseurs+constructeurs+ editeurs... private: int mNbVehicule; QVector<Vehicule> mListeVehicules; };
Comme vous l'avez deviné, l'idée est d'afficher le garage dans un Widget (ici sous forme d'une liste) et de pouvoir éditer, par exemple, les données membres de ses éléments. L'idée est d'aussi de ne pas afficher toutes les données et en cacher certaines (comme la plaque d’immatriculation) et interdire l'édition d'autres données...
Mes questions sont donc les suivantes :
- Est ce que dans ce cas précis, passer par un modèle MVC est la chose qu'il faut faire?
- Comment relier la classe Garage à un modèle pour pouvoir l'éditer à travers une interface graphique? Est ce que garage n'est pas déjà un modèle en soi?!!
- L’accès aux champs privés et publiques de mes différentes classes se fait t-il avec des accesseurs et editeurs membres ou alors la magie du mvc (je suis sceptique) me permet d'éditer directement ces champs
Je bloque/bogue vraiment depuis quelques semaines sur cette notion de MVC et je n'arrive pas vraiment à avancer. Je vous remercie, par avance, pour votre aide.
Partager