Bonjour,
je fais apparaitre un CDialog en modal, mais j'aimerai que ce position soit la meme que celle de l'appelant,
comment puis faire ?
merci
Bonjour,
je fais apparaitre un CDialog en modal, mais j'aimerai que ce position soit la meme que celle de l'appelant,
comment puis faire ?
merci
La fonction GetWindowRect() devrait faire l'affaire.
Tu aura desoin de lui passer un handle de ta première dialog (this), et tu va récupérer un LPRECT, une structure grâce à laquelle tu auras les dimensions ainsi que la position de ta dialog.
Hope it helps.
apres il faudra faire un SetWindowPos
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 thedlg->SetWindowPos(NULL,x,y, 0,0,SWP_NOZORDER | SWP_NOSIZE);![]()
Ce qui est affirmé sans preuve peut être nié sans preuve Euclide.
Les conversions numériques en C,C++,C++/CLI
DLL d'extensions : écriture d'un plug-in de classe
Démarrer avec les MFC 2/2
Création d'un ActiveX MFC
Intégration d'une imprimante PDF pour éditions automatisées
Migrer du code de Visual C++ 6.0 vers Visual C++ 2005
Démarrer avec les MFC sous Visual C++1/2
la Faq Visual C++ 500 Q/R,Mon blog
Aide en Ligne MFC
Cours et tutoriels C++ - FAQ C++ - Forum C++.
ok, merci bien
[edit]
pour info, jme suis fais ca :
que j'appelle comme ca :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 void SetSameWindowPosition(CWnd* Origine, CWnd* Destination) { CRect rect ; Origine->GetWindowRect(&rect) ; CPoint TopLeft = rect.TopLeft(); Destination->SetWindowPos(NULL,TopLeft.x,TopLeft.y, 0,0,SWP_NOZORDER | SWP_NOSIZE); }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SetSameWindowPosition(this, GetParent()); et SetSameWindowPosition( GetParent(), this);
Partager