[問題] 一直抓不到滑鼠滾輪的變化量
快瘋了... 很奇怪的問題...
我在BCB下寫了一個hook要去處理攔截的滑鼠事件:
處理的function大概長這樣
LRESULT CALLBACK proc_mouse (int code, WPARAM w, LPARAM l){
if(code < 0) return 1;
switch(w)
{
case WM_LBUTTONDOWN:
/*偵測按下滑鼠左鍵 */
break;
case WM_LBUTTONUP:
/* 偵測放開下滑鼠左鍵 */
break;
case WM_RBUTTONDOWN:
/*偵測按下滑鼠右鍵*/
break;
case WM_RBUTTONUP:
/*偵測按下滑鼠左鍵*/
break;
case WM_MOUSEMOVE:
/*滑鼠移動中*/
break;
case VM_MOUSEWHEEL:
/*偵測是否有滾輪移動*/
//想要得到滾輪移動的變化量
int Delta = GET_WHEEL__DELTA_WPARAM(w);
//或者寫成 Delta = HIWORD(w);
break;
}
return 1;
}
Compile 後完全沒有錯誤, 並且可以執行,而且滑鼠按下,移動,滾動的訊號都可以偵測到
測試過的確VM_MOUSEWHEEL偵測得到,但是Delta都一直是零,
我爬文過的結果似乎別人都這樣寫的沒問題... ,想請問板上的大大如何解決,感謝!!
我的執行環境是: BCB C++ 6, windows7 64-bit
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.25.101.191
※ 編輯: ColdFunction 來自: 163.25.101.191 (12/02 17:35)
※ 編輯: ColdFunction 來自: 163.25.101.191 (12/02 17:35)
※ 編輯: ColdFunction 來自: 163.25.101.191 (12/02 17:36)
推
12/02 23:29, , 1F
12/02 23:29, 1F
→
12/02 23:29, , 2F
12/02 23:29, 2F
→
12/02 23:32, , 3F
12/02 23:32, 3F
→
12/02 23:35, , 4F
12/02 23:35, 4F
→
12/05 19:02, , 5F
12/05 19:02, 5F
→
12/05 19:04, , 6F
12/05 19:04, 6F
→
12/05 19:56, , 7F
12/05 19:56, 7F
→
12/05 19:57, , 8F
12/05 19:57, 8F
→
12/05 20:05, , 9F
12/05 20:05, 9F