假設的應用場景:
當hook住滑鼠按鈕被按下的事件時, 要先執行滑鼠按鈕被按下的自定義處理,再轉到處理滑鼠被按下的事件.
假設自定義處理為: 將滑鼠游標所在的按鈕禁止和隱藏.
實現流程:
* 得到滑鼠游標所在位置的子窗體控制代碼, 判斷該子窗體(視窗類名,視窗文字, 視窗風格...)是否是我們要處理的按鈕.
* 如果是要處理的按鈕, 再判斷該滑鼠是按下還是彈出選單, 如果滑鼠為按下, 才去執行自定義處理.
這時遇到的問題是, 使用者有可能交換了滑鼠的左右鍵. 如果沒交換滑鼠左右鍵, 滑鼠左鍵是按下的動作, 滑鼠右鍵是彈出選單.
在msdn上有個例子,可以解決"滑鼠左右鍵是否已經交換"的問題~
[cpp]view plain
copy
print?
/// @file testmouseswap.cpp
/// @brief 判斷滑鼠鍵是否被使用者設定成"左右鍵交換"
#include "stdafx.h"
#include
#include
/// @fn ismouseswap
/// @brief 測試滑鼠左右鍵是否已經交換
/// @param void
/// @return boolen, true = 滑鼠左右鍵已經交換, false = 滑鼠左右鍵沒有交換
/// @note 如果滑鼠左右鍵沒有交換, 滑鼠左鍵是按下, 滑鼠右鍵是彈出選單
bool ismouseswap();
int _tmain(int argc, _tchar* argv)
bool ismouseswap()
VC 交換滑鼠左右鍵
mfc介面設計兩個button,乙個static text 首先應檢測是否有滑鼠或者滑鼠按鍵是否已交換,類中宣告ismousebuttonswap 函式 注意,膝上型電腦的觸控板也會被系統認為是滑鼠。檢測滑鼠左右鍵是否交換,返回 1表示未檢測到滑鼠,返回0表示未交換,返回1表示已交換 int csw...
滑鼠左 右鍵失靈
在我的實際需求中要求乙個可移動的canvas,因此我在在canvas外層加了個自己實現的可移動的彈窗父元件。要求右鍵移動彈窗,左鍵塗鴉,同時遮蔽右鍵選單欄。父元件 當右鍵被按下時,執行拖拽操作 實現移動端拖拽 down else this position.x touch.clientx this ...
iMouse 快速切換滑鼠左右鍵
此blog是imouse軟體的官網 是鍵盤上數字 1 左邊的鍵 切換左右鍵。說明 1.支援win xp vista win 7 win 8。2.軟體大小 16kb,md5值 e6ef7c38987066d846526f5ba78e6a7b。3.此軟體百分百無毒,請注意核對md5。為了有效減小軟體大小...