[WINDOWS C++]problème de fenêtre fille

Résolu
brosse_adan Messages postés 30 Date d'inscription jeudi 22 avril 2004 Statut Membre Dernière intervention 7 octobre 2005 - 13 déc. 2004 à 16:18
brosse_adan Messages postés 30 Date d'inscription jeudi 22 avril 2004 Statut Membre Dernière intervention 7 octobre 2005 - 14 déc. 2004 à 17:20
Bonjour à tous!

Voilà mon problème : je veux avoir une fenêtre principale avec trois fenêtres filles. J'enregistre ma classe de fenêtre principale, mes trois classes de fenêtres filles (chacune avec leur propre fonction de gestionnaire de messages), et, dans mon winmain, je fais le createwindow() de ma fenêtre principale ainsi que son showwindow() correspondant. Dans la gestion des messages de la fenêtre principale, lors d'un WM_CREATE, je créé les trois fenêtres filles avec comme propriété WM_CHILD|WM_VISIBLE|WS_CAPTION.

Mais là, erreur! Aucune des fenêtres n'apparaît! En revanche, si je mets leur création avec le showwindow() de la fenêtre principale, ça marche!! mais je veux qu'il soit dans le WM_CREATE, alors comment faire???

En espérant avoir été clair, merci d'avance!

4 réponses

ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
14 déc. 2004 à 09:03
Le problème c'est que cette variable est affectée en sortie du CreateWindow, c'est à dire APRES le traitement de WM_CREATE
=> dans WM_CREATE, tu ne peut pas te servir de la variable globale, mais seulement du hWnd fourni en param de WndProc.
3
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
13 déc. 2004 à 18:33
Lors de la création des fenêtres fille dans WM_CREATE de la MainFrame, quelle valeur donne-tu au parent :
- la valeur hWnd passée en param de la WndProc de la mainframe
- une variable globale initialisée par le CreateWindow de la MainFrame dans le WinMain
0
brosse_adan Messages postés 30 Date d'inscription jeudi 22 avril 2004 Statut Membre Dernière intervention 7 octobre 2005
13 déc. 2004 à 23:48
je mets une variable globale initialisée par le CreateWindow de la mainframe dans le winmain
0
brosse_adan Messages postés 30 Date d'inscription jeudi 22 avril 2004 Statut Membre Dernière intervention 7 octobre 2005
14 déc. 2004 à 17:20
Un grand merci, cela fonctionne parfaitement bien!!!

J'avoue que sans ton aide, je ne vois pas comment j'aurais fait, donc encore une fois, merci!!!
0
Rejoignez-nous