python怎么识别鼠标的动作_如何用Python检测鼠标侧按钮

WH_MOUSE_LL挂钩XButtons并且PyHook的dll将它传递给python,但是python端的HookManager忽略它们。但是,您可以跳过HookManager并直接使用cpyHook接口。

此示例在按下按钮时将xbutton事件打印到控制台,并在按下鼠标左键时退出:

from pyHook import cpyHook, HookConstants

import pythoncom

import ctypes

user32 = ctypes.windll.user32

XBUTTON1 = 0x0001

XBUTTON2 = 0x0002

wm = { 0x020B: "WM_XBUTTONDOWN", 0x020C: "WM_XBUTTONUP", 0x0201: "WM_LBUTTONDOWN", }

def mouse_handler(msg, x, y, data, flags, time, hwnd, window_name):

name = wm.get(msg, None)

if name:

xb = data >> 16 # high word indicates which xbutton

print(name, xb & XBUTTON1, xb & XBUTTON2)

if name == "WM_LBUTTONDOWN":

user32.PostQuitMessage(0)

return True # True = pass the event to other handlers

try:

cpyHook.cSetHook(HookConstants.WH_MOUSE_LL, mouse_handler)

pythoncom.PumpMessages() # returns on WM_QUIT

finally:

cpyHook.cUnhook(HookConstants.WH_MOUSE_LL)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值