Python win32api虚拟移动鼠标
我试图用python模拟鼠标点击 我的代码如下:Python win32api虚拟移动鼠标,python,winapi,mouse,simulation,Python,Winapi,Mouse,Simulation,我试图用python模拟鼠标点击 我的代码如下: class Mouse(object): def __init__(self): self.x_res = win32api.GetSystemMetrics(0) self.y_res = win32api.GetSystemMetrics(1) def rightClick(self, x, y): nx = x*65535/self.x_res ny = y
class Mouse(object):
def __init__(self):
self.x_res = win32api.GetSystemMetrics(0)
self.y_res = win32api.GetSystemMetrics(1)
def rightClick(self, x, y):
nx = x*65535/self.x_res
ny = y*65535/self.y_res
win32api.mouse_event(win32con.MOUSEEVENTF_ABSOLUTE|win32con.MOUSEEVENTF_MOVE,nx,ny)
win32api.Sleep(200)
win32api.mouse_event(win32con.MOUSEEVENTF_ABSOLUTE|win32con.MOUSEEVENTF_RIGHTDOWN,x,y,0,0)
win32api.Sleep(200)
win32api.mouse_event(win32con.MOUSEEVENTF_ABSOLUTE|win32con.MOUSEEVENTF_RIGHTUP,x,y,0,0)
win32api.Sleep(700)
我使用的代码如下:
mouse = Mouse()
win32api.Sleep(2000)
x = 2520
y = 414
mouse.leftClick(x, y)
然而,这会移动真正的鼠标,因此会干扰用户。它们是发送该事件的一种方式,但不会真正移动鼠标吗?请参见,它指的是。CPNMouse项目已不存在,AFAICT 如果您坚持伪造输入以自动执行此操作,那么您将无法解决当前的问题。当您伪造输入时,系统将像真实输入一样响应。您可以将光标移回其原始位置,但用户将看到光标在四处移动。这真的不是一件好事
你需要的是一个解决问题的方案,不涉及伪造输入。当然,你没有详细说明问题,只是你的解决方案,所以我们不得不猜测问题。看起来您正在尝试自动化某些外部应用程序。该平台通过UIAutomation提供支持 我是唯一一个将“这移动了真正的鼠标”视为用户手放在鼠标上,鼠标在鼠标垫上快速移动到另一个位置的人吗?也就是说,我相信你只需记下原始位置,移动光标,单击,然后将其移回Windows中通常只有一个鼠标。所以我同意@mhlester。但也许你可以添加第二个鼠标。问题的真正问题在这里描述:好的,我将在30分钟内发布实际问题,而不是要求更具体的应用程序。问题是:我们能先处理这个问题吗?谁投了反对票,谁能解释原因?如果有两个鼠标光标,则可以根据需要移动其中一个鼠标光标以单击按钮,将用户的鼠标指针留在原来的位置。因此,尽管另一个答案可能更好,但我不认为我的答案是错的。