使用ctypes在Python中单击鼠标右键
我是Python的完全初学者,所以不懂术语。我想使用python在特定点进行简单的单击。我已经使用ctypes管理了左键单击:使用ctypes在Python中单击鼠标右键,python,ctypes,right-click,Python,Ctypes,Right Click,我是Python的完全初学者,所以不懂术语。我想使用python在特定点进行简单的单击。我已经使用ctypes管理了左键单击: >>> import ctypes >>> ctypes.windll.user32.SetCursorPos(x,y), ctypes.windll.user32.mouse_event(2,0,0,0,0), ctypes.windll.user32.mouse_event(4,0,0,0,0) 有没有同样的方法进行右键单击?以
>>> import ctypes
>>> ctypes.windll.user32.SetCursorPos(x,y), ctypes.windll.user32.mouse_event(2,0,0,0,0), ctypes.windll.user32.mouse_event(4,0,0,0,0)
有没有同样的方法进行右键单击?以下是用于
鼠标事件的常量
MOUSE_LEFTDOWN = 0x0002 # left button down
MOUSE_LEFTUP = 0x0004 # left button up
MOUSE_RIGHTDOWN = 0x0008 # right button down
MOUSE_RIGHTUP = 0x0010 # right button up
MOUSE_MIDDLEDOWN = 0x0020 # middle button down
MOUSE_MIDDLEUP = 0x0040 # middle button up
在代码中,您将发送两个事件:MOUSE\u LEFTDOWN
和MOUSE\u LEFTUP
。这模拟了“点击”
现在,右键单击时,您将以类似的方式发送鼠标右下
和鼠标右上
。因此,对于右下,我是否使用(8,0,0,0)和(10,0,0,0,0)来右上?10
和0x10
是两个不同的东西。第一个是Base10,表示十进制10,第二个是十六进制,表示16。除此之外,是的,这将调用一个右键单击。我刚刚输入了>>>导入ctypes>>>user32=ctypes.windell.user32>>>user32.SetCursorPos(650135),user32.mouse_事件(8,0,0,0,0),user32.mouse_事件(10,0,0,0,0),它没有右键单击?正如我告诉过你的,它不会。尝试16
(或0x10
)而不是10
。@Robert Thackeray:你看到并理解关于十六进制与十进制数字的评论了吗?