Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用ctypes在Python中单击鼠标右键_Python_Ctypes_Right Click - Fatal编程技术网

使用ctypes在Python中单击鼠标右键

使用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) 有没有同样的方法进行右键单击?以

我是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)

有没有同样的方法进行右键单击?

以下是用于
鼠标事件的常量

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:你看到并理解关于十六进制与十进制数字的评论了吗?