Bonjour,
Je cherche à déplacer dynamiquement mon bouton. J'ai essayé avec SetWindowPos ( "fenetre parent", x, y, 0, 0, SWP_SHOWWINDOW) mais rien ne se passe mon bouton est toujours actif et fonctionne mais il n'a pas bouger.
Pourriez vous m'aider.
Bonjour,
Je cherche à déplacer dynamiquement mon bouton. J'ai essayé avec SetWindowPos ( "fenetre parent", x, y, 0, 0, SWP_SHOWWINDOW) mais rien ne se passe mon bouton est toujours actif et fonctionne mais il n'a pas bouger.
Pourriez vous m'aider.
Voila la partie du constructeur :
et le OnInitDialog
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 if(!PauseButton.LoadBitmaps(_T(IDB_PAUSE_NORMAL),_T(IDB_PAUSE_CLICK))){ AfxThrowResourceException(); }
J'ai trouvé une solution en faisant un MoveWindow à la place du SetWindowPos, mais je veux bien savoir pourquoi ca ne marchait pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 VERIFY(PauseButton.SubclassDlgItem(IDC_PAUSE,this)); PauseButton.SizeToContent(); PauseButton.SetWindowPos(this, 8, 32, 20, 20, SWP_SHOWWINDOW);
salut, voir faq:
Comment déplacer un contrôle dans une fenêtre ?
![]()
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++.
Cela ne fonctionnera pas il fait un "subclassing" de son bouton ..Envoyé par farscape
et alors ?Envoyé par mat.M
tous les controles sont subclassés...
![]()
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++.
mon bouton se déplace désormais, en utilisant la fonction MoveWindow, mais pas avec SetWindowPos.
Pourquoi fais-tu du "subclassing" avec le bouton ?Envoyé par Xhéras
Pq appeler SubclassDlgItem ?
S'il ne bouge pas c'est normal , la file de message étant déroutée avec SubclassDlgItem ne reçoit plus WM_MOVE
CWnd::SubclassDlgItem
BOOL SubclassDlgItem( UINT nID, CWnd* pParent );
Remarks
Call this member function to “dynamically subclass” a control created from a dialog template and attach it to this CWnd object. When a control is dynamically subclassed, windows messages will route through the CWnd’s message map and call message handlers in the CWnd’s class first. Messages that are passed to the base class will be passed to the default message handler in the control.
This member function attaches the Windows control to a CWnd object and replaces the control’s WndProc and AfxWndProc functions. The function stores the old WndProc in the location returned by the GetSuperWndProcAddr member function.
Partager