Bonjour � tous,
Je code actuellement un programme en C++ sous Visual et je ne trouve pas comment bloquer l'utilisation de la molette souris � l'utilisateur.
Bonjour � tous,
Je code actuellement un programme en C++ sous Visual et je ne trouve pas comment bloquer l'utilisation de la molette souris � l'utilisateur.
Il faut que tu r�cup�res le message WM_MOUSEWHEEL.
Pour ce il suffira de rajouter dans ton MESSAGE_MAP:
Puis par exemple la fonction suivante :ON_WM_MOUSEWHEEL()
Bon courage
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7 BOOL CPersoDlg::OnMouseWheel(UINT nFlags, short zDelta, CPoint pt) { //faire quelque chose ou ne rien faire // ... return TRUE; }![]()
En fait �a j'ai essay� mais �a ne d�sactive pas la molette.
J'ai besoin de d�sactiver l'utilisation de la molette dans une fenetre car j'ai un controle (CListCtrl) qui g�re cette molette et �a ne me plait pas j'aimerais ne pas permettre au CListCtrl de sroller quand je fais la molette.
Donc comme je pense qu'il est impossible d'acc�der au OnMouseWheel de la CListCtrl (prot�g� il me semble) ben je pense supprimer l'utilisation de la molette dans mon appli. Il n'y a pas une option dans le projet ou une ligne de code � rajouter pour �a?
A chaque fois le probleme est simple mais la solution compliqu� � trouv�, pas simple la prog !!!!![]()
Surcharge la CListCtrl par un CListPersoCtrl qui impl�mente ce que je t'ai �crit pr�c�demment.Donc comme je pense qu'il est impossible d'acc�der au OnMouseWheel de la CListCtrl (prot�g� il me semble) ben je pense supprimer l'utilisation de la molette dans mon appli
Et voil� une des solutions qui m'a �t� donn�e :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9 BOOL CFenetreDlg::PreTranslateMessage(MSG* pMsg) { // intercept key events if ( (pMsg->message == WM_MOUSEHWHEEL) || (pMsg->message == WM_VSCROLL) || (pMsg->message == WM_MOUSEWHEEL) ) { return TRUE; } return CDialogEx::PreTranslateMessage(pMsg); }
Tu as 2 fois pMsg->message == WM_MOUSEHWHEEL dans ton test.
D'autre part en testant au niveau de ta fen�tre parent (ce que tu fais), il n'y a aucune garantie que les messages soient intercept�s si ta CListCtrl a le focus.
Partager