Bonsoir/Bonjour à tous!
Je tente de créer un raccourci clavier comprenant la molette de la souris + la touche ALT de mon clavier (pour switch de fond d'écran une fois sur le bureau ^^).
Voici mon hook (fonctionnel) pour la molette:
Je mets le hook en place avec 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
16
17
18
19
20
21
22
23
24
25 public static int MouseHookProc(int nCode, IntPtr wParam, IntPtr lParam) { int wParamValue = wParam.ToInt32(); if(wParamValue == (int)522) //Wheel { //Marshall the data from the callback. MSLLHOOKSTRUCT MyTagMSLLHOOKSTRUCT = (MSLLHOOKSTRUCT)Marshal.PtrToStructure(lParam, typeof(MSLLHOOKSTRUCT)); if (MyTagMSLLHOOKSTRUCT.MouseData > 0) //up { } else //and......down u_u { } } return CallNextHookEx(hHook, nCode, wParam, lParam); }
C'est peut-être la fatigue mais je ne parviens pas à vérifier si la touche alt est enfoncée au moment de l'évenement...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 MouseHookProcedure = new HookProc(Form1.MouseHookProc); SetWindowsHookEx(WH_MOUSE_LL, MouseHookProcedure, (IntPtr)0, 0); //Pre: HookProc et MouseHookProcedure sont déclarés plus haut tel que: //public delegate int HookProc(int nCode, IntPtr wParam, IntPtr lParam); //HookProc MouseHookProcedure;
Si quelqu'un a une idée je suis preneur !
Merci de m'avoir lu!
Partager