易語API監(jiān)視鼠標狀態(tài)教學
調(diào)用API來進行監(jiān)視鼠標狀態(tài)——判斷鼠標哪個鍵按下與放開
1、新建一個“易語言”窗口程序
2、API命令可下載易語言API編程助手進行查詢
我們需要的API命令有
CallNextHookEx——呼叫下一鉤子
SetWindowsHookExA——安裝系統(tǒng)鉤子
UnhookWindowsHookEx——卸載系統(tǒng)鉤子
不同翻譯的翻譯結(jié)果也不同,大致了解下就可以了
3、還有一個API命令
GetModuleHandleA——取實例句柄
用來取窗口句柄的
4、對了,API的參數(shù)類型要改下,DLL命令如下:
.版本 2 .DLL命令 安裝系統(tǒng)鉤子, 整數(shù)型, "user32.dll", "SetWindowsHookExA", , , SetWindowsHookEx .參數(shù) 鉤子類型, 整數(shù)型, , idHook .參數(shù) 回調(diào)函數(shù)地址, 子程序指針, , lpfn .參數(shù) 實例句柄, 整數(shù)型, , hmod .參數(shù) 線程ID, 整數(shù)型, , dwThreadId .DLL命令 取實例句柄, 整數(shù)型, , "GetModuleHandleA", , , .參數(shù) 程序名, 整數(shù)型 .DLL命令 卸載系統(tǒng)鉤子, 整數(shù)型, "user32.dll", "UnhookWindowsHookEx", , , UnhookWindowsHookEx .參數(shù) 鉤子句柄, 整數(shù)型, , hHook .DLL命令 呼叫下一鉤子, 整數(shù)型, "user32.dll", "CallNextHookEx", , , CallNextHookEx .參數(shù) 鉤子句柄, 整數(shù)型, , hHook .參數(shù) 代碼值, 整數(shù)型, , ncode .參數(shù) 附加參數(shù)1, 整數(shù)型, , wParam .參數(shù) 附加參數(shù)2, 整數(shù)型, 傳址, lParam
直接復(fù)制然后粘貼就可以了,系統(tǒng)會自動寫入DLL命令的
5、然后就可以輸入代碼了
變量都是中文的,這樣應(yīng)該就可以明白變量的含義了
代碼如下:
.版本 2 .支持庫 spec .程序集 窗口程序集_啟動窗口 .子程序 啟動監(jiān)視 鉤子句柄 = 到整數(shù) (安裝系統(tǒng)鉤子 (14, &鉤子處理, 取實例句柄 (0), 0)) ' 安裝系統(tǒng)鉤子——安裝和卸載和注冊熱鍵與注銷熱鍵相似的,只是類型不同 .子程序 結(jié)束監(jiān)視 .如果真 (鉤子句柄 ≠ 0) ' 檢測鉤子句柄——如果不檢測直接卸載可能會出現(xiàn)問題 卸載系統(tǒng)鉤子 (鉤子句柄) .如果真結(jié)束 .子程序 鉤子處理, 整數(shù)型 .參數(shù) 代碼值, 整數(shù)型 .參數(shù) 參數(shù)一, 整數(shù)型 .參數(shù) 參數(shù)二, 整數(shù)型 ' 參數(shù)一 也就是 鍵代碼——不過是API里面的,不能直接用 .判斷開始 (參數(shù)一 = 519) ' 鼠標中鍵按下的參數(shù) 調(diào)試輸出 (“中鍵按下”) .判斷 (參數(shù)一 = 520) ' 鼠標中鍵放開的參數(shù) 調(diào)試輸出 (“中鍵放開”) .判斷 (參數(shù)一 = 513) ' 鼠標左鍵按下的參數(shù) 調(diào)試輸出 (“左鍵按下”) .判斷 (參數(shù)一 = 514) ' 鼠標左鍵放開的參數(shù) 調(diào)試輸出 (“左鍵放開”) .判斷 (參數(shù)一 = 516) ' 鼠標右鍵按下的參數(shù) 調(diào)試輸出 (“右鍵按下”) .判斷 (參數(shù)一 = 517) ' 鼠標右鍵放開的參數(shù) 調(diào)試輸出 (“右鍵放開”) .默認 .判斷結(jié)束 返回 (呼叫下一鉤子 (鉤子句柄, 代碼值, 參數(shù)一, 參數(shù)二)) ' 返回值——用來返回,不然子程序 鉤子處理 沒有返回值 .子程序 __啟動窗口_創(chuàng)建完畢 啟動監(jiān)視 () ' 調(diào)用子程序 啟動監(jiān)視 .子程序 __啟動窗口_可否被關(guān)閉, 邏輯型 結(jié)束監(jiān)視 () ' 調(diào)用子程序 結(jié)束監(jiān)視
6、然后F5運行看看效果
如果360出現(xiàn)安全警告,直接點擊允許就可以了
剛運行的時候可能會有點卡,那是在安裝系統(tǒng)鉤子,等會就不卡了
相關(guān)文章
易語言調(diào)用dll實現(xiàn)條形碼本地離線識別的代碼
今天小編就為大家分享一篇關(guān)于易語言實現(xiàn)條形碼本地離線識別的代碼,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-11-11