Changement de taille d'une dialogbox

Utilisateur anonyme - 5 août 2005 à 14:57
 Utilisateur anonyme - 5 août 2005 à 17:07
salut à tous,



je développe en comment une application en mfc basee sur une dialogbox.
J'ai pas trouvé le moyen de redimensionner les contrôles placer dessus
pour une meilleure vision.



est que quelqu'un aurait déjà fait cela ou aurait une piste ?



merci d'avance pour vos reponses

6 réponses

magic_Nono Messages postés 1878 Date d'inscription jeudi 16 octobre 2003 Statut Membre Dernière intervention 16 mars 2011
5 août 2005 à 16:22
ce genre de trucs



c_comboLg2.MoveWindow(cx/2+30,10,cx/2-30,200,true);

c_bNew.SetWindowPos(NULL,cx-46,40,0,0,SWP_NOZORDER |SWP_NOOWNERZORDER |SWP_NOSIZE |SWP_SHOWWINDOW );


___________________________________________________________
Magicalement
Nono
0
magic_Nono Messages postés 1878 Date d'inscription jeudi 16 octobre 2003 Statut Membre Dernière intervention 16 mars 2011
5 août 2005 à 16:23
à faire éventuellt suivre de ceci:



InvalidateRect(NULL,false); //force le réaffichage


___________________________________________________________
Magicalement
Nono
0
Utilisateur anonyme
5 août 2005 à 16:52
salut magic,



d'abord merci pour ta reponse, c'est exactement ce qu'il me fallait.



J'appelle la fonction MoveWindow dans la fonction OnSize qui gere
l'evenement WM_SIZE. Par contre j'ai un souci s'assertion lors de
l'initialisation.

ASSERT(::IsWindow(m_hWnd)) dans MoveWindow.

Je pense que ca vient du fait que le controle qui est retaille n'est
pas encore instancie. Est ce que tu sais comme gerer ce problemes ?
0
Utilisateur anonyme
5 août 2005 à 16:55
au fait, voici mon code :



void CEssaiDlg::OnSize(UINT nType, int cx, int cy)

{

CDialog::OnSize(nType, cx, cy);

TRACE("\n\n--->%i\n\n",nType);





m_list.MoveWindow(cx/2+30,10,cx/2-30,200,true);



}
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
magic_Nono Messages postés 1878 Date d'inscription jeudi 16 octobre 2003 Statut Membre Dernière intervention 16 mars 2011
5 août 2005 à 16:57
if(m_hWnd)

m_list.MoveWindow(cx/2+30,10,cx/2-30,200,true);



de mémoire



ou passer par un booléen


___________________________________________________________
Magicalement
Nono
0
Utilisateur anonyme
5 août 2005 à 17:07
effectivement, ca marche en testant m_hWnd



if(m_list.m_hWnd)

{

if((nType==SIZE_MAXIMIZED))

{

m_list.MoveWindow(cx/2+30,10,cx/2-30,200,true);

}

else

{

m_list.MoveWindow(0,0,cx/2-30,200,true);

}

}


merci pour le coup de pouce
0
Rejoignez-nous