[VC++6/MFC] Problème de Child Dialog

Problème de Child Dialog [VC++6/MFC] - C++ - Programmation

Marsh Posté le 25-07-2006 à 15:59:16    

Salut à tous,
 
je n'ai pas trop l'habitude de travailler avec Visual C++ et les MFC et du coup je suis un peu perdu.
 
Dans le logiciel sur lequel je bosse on a une sorte de palette de dessin dans une dialog box avec des boutons, des champs de textes et curseur pour personnaliser le dessin dans la fenetre principale. Pour l'instant tout se passait bien comme ça, on avait relativement peu de boutons de dessin donc ça ne posait pas de problèmes
 
Sauf que je vais devoir ajouter quelques nouveaux boutons (et également ne pas en afficher certains suivant la config du soft) et j'aurais voulu pouvoir organiser mes boutons dans des onglets (comme ça, plus de problème d'organisation et il sera toujours possible de ne charger que quelques onglets suivants les besoins).  
 
J'ai donc créé un CTabCtrl dans lequel je charge et j'affiche d'autres dialog box en tant que child dialog, ou je pensais mettre mes boutons. Jusque la ça va super, mes dialogues sont redimensionnées et affichées dans mon TabCtrl suivant l'onglet séléctionné.
 
Le problème vient du fait que l'action des boutons doivent modifier des variables d'état entre autres, appeler des fonctions etc.. dans mon dialogue de dessin principal et la je bloque, je ne sais pas trop ou chercher étant donné que je sais pas trop ce qui est possible ou pas.
 
Dois-je envoyer des messages à ma fenetre parent depuis mes dialog box (bon dans ce cas la "fenetre" parent c'est mon CTabCtrl donc c'est pas top, donc faudrait que j'envoye au parent du parent, ou alors que je crée mes dialogues en tant qu'enfants de mon dialogue principal ?) ?
 
Si oui, comment (Désolé comme j'ai dit plus haut j'ai vraiment pas l'habitude de la prog windows en C++) ? Bien sur, je pourrais avoir un pointeur sur le parent pour aller modifier ces états comme variables globales mais c'est très moche et j'aimerais pas devoir en arriver là ;)  
 
Bref si quelqun pouvait me donner au moins une direction dans laquelle chercher ça serait sympa, merci.

Reply

Marsh Posté le 25-07-2006 à 15:59:16   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed