Bonjour,
J'ai une application MFC sur un projet Dialog. L'id�e de d�part c'�tait de faire des boutons qui agirait le temps qu'on reste appuyer dessus et pas devoir appuyer plusieurs fois pour obtenir un resultat.
Cette erreur est survenue quand j'ai voulu faire un subclassing de mes controles buttons, la raison pour laquelle j'ai fait du subclassing c'est afin que mes boutons n'agiraient pas que au simple clik de souris (BN_CLICKED) et c'est malheureusement que �a de disponible sur un dialog mais c'est de permettre � mes controls d'intercepter �galement les msg events windows, notamment le OnLButtonDown (click bouton souris gauche).
mon programme compile bien mais donne une erreur Assert Failed
lorsque je laisse la ligne qui suit dans mon OnInitDialog() :
ProjetDlg.cpp:
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6 .. m_button15.SubclassDlgItem(IDC_BUTTON_ZOOM_IN, this); ..
J'ai pour le header de mon projet principal:
ProjetDlg.h
d'apres que j'ai pu comprendre cela viendrait du fait que mon control IDC_BUTTON_ZOOM_IN serait deja li� � un Handle avant.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9.. public: CButton m_button15; ...
j'ai dans mon OnInitDialog avant le SubClassdlg() ceci :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 ... HICON hbitmap24bits = (HICON)LoadImage(AfxGetResourceHandle(), MAKEINTRESOURCE (IDI_ICON2), IMAGE_ICON, 16,16, LR_LOADMAP3DCOLORS | LR_DEFAULTSIZE | LR_CREATEDIBSECTION); m_button15.SetIcon(hbitmap24bits); ...
Une autre solution mais qu'il faut �viter est d'ajouter une classe avec le wizard par exemple CButtonEvent et de la faire d�river de CButton. Car alors il est pas possible d'acceder correctement aux methodes de la classe principale CProjetDlg. L'id�e �tant de rester avec un seule classe principale.
Pouvez vous m'aider avec une solution adapt�e ?
Merci
Partager