Maximizer une fenêtre à l'ouverture

Messages postés
4
Date d'inscription
lundi 24 juin 2002
Statut
Membre
Dernière intervention
7 juin 2004
- - Dernière réponse : Dorgendubal
Messages postés
66
Date d'inscription
vendredi 3 mai 2002
Statut
Membre
Dernière intervention
11 juillet 2002
- 1 juil. 2002 à 14:42
salut,

j'utilise visual C++ 6 & les MFC depuis peu. avec AppWizard j'ai crée une application MDI. J'ai réussi à maximizer la fenêtre principale à l'ouverture mais je n'arrive pas à trouver les methodes pour que chaque fenêtre fille crée s'ouvre elles aussi de façon maximizer à la création.

inerti@
Afficher la suite 

3 réponses

Messages postés
66
Date d'inscription
vendredi 3 mai 2002
Statut
Membre
Dernière intervention
11 juillet 2002
0
Merci
Salut,

je vois une solution assez simple :

1) Coordonnées de la fenêtre principale
RECT r;
::GetWindowRect(hwndMain, &r);

2) Assigner les même coord à la fenêtre fille
::SetWindowPos(hwndSub, HWND_TOP, 0, 0, r.right, r.bottom, NULL);
::ShowWindow(hwndSub);

j'ai pas testé mais ça devrait jouer.

Sven

Ps : hwndMain et hwndSub sont les "Handle" (HWND).
Commenter la réponse de Dorgendubal
Messages postés
4
Date d'inscription
lundi 24 juin 2002
Statut
Membre
Dernière intervention
7 juin 2004
0
Merci
non en fait c'est encore plus simple !

j'ai trouvé entre temps :

on surcharge la méthode ActivateFrame(int nCmdShow) de la classe derivé de childframe comme ceci :

void CChildFrame::ActivateFrame(int nCmdShow)
{

// maximize la fenêtre à l'ouverture :
nCmdShow = SW_SHOWMAXIMIZED ;

CMDIChildWnd::ActivateFrame(nCmdShow);

}

et voilà ;-)

inerti@
Commenter la réponse de inertia
Messages postés
66
Date d'inscription
vendredi 3 mai 2002
Statut
Membre
Dernière intervention
11 juillet 2002
0
Merci
mais alors en fait, il te suffit (encore plus simplement) de faire :

::ShowWindow(hwnd, SW_SHOWMAXIMIZED);

ça devrait marcher, non ?
Commenter la réponse de Dorgendubal