gpt4 book ai didi

python - 在python中生成鼠标键盘组合事件

转载 作者:太空宇宙 更新时间:2023-11-04 01:43:18 25 4
gpt4 key购买 nike

我希望能够同时进行按键和鼠标点击的组合,例如 Control+LeftClick

目前我可以使用 Control 然后左键单击以下代码:

import win32com, win32api, win32con
def CopyBox( x, y):
time.sleep(.2)
wsh = win32com.client.Dispatch("WScript.Shell")
wsh.SendKeys("^")
win32api.SetCursorPos((x,y))
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, x, y, 0, 0)
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, x, y, 0, 0)

它的作用是按下键盘上的 control,然后它会发出咔嗒声。我需要它来保持控件按下的时间更长,并在它仍然按下以继续运行代码时返回。是否有一种可能较低级别的方式说按下键,然后在代码中告诉它抬起键,例如鼠标正在做什么?

最佳答案

按下控制键:

win32api.keybd_event(win32con.VK_CONTROL, 0, win32con.KEYEVENTF_EXTENDEDKEY, 0)

释放它:

win32api.keybd_event(win32con.VK_CONTROL, 0, win32con.KEYEVENTF_EXTENDEDKEY | win32con.KEYEVENTF_KEYUP, 0)

因此您的代码将如下所示:

import win32api, win32con
def CopyBox(x, y):
time.sleep(.2)
win32api.keybd_event(win32con.VK_CONTROL, 0, win32con.KEYEVENTF_EXTENDEDKEY, 0)
win32api.SetCursorPos((x,y))
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, x, y, 0, 0)
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, x, y, 0, 0)
win32api.keybd_event(win32con.VK_CONTROL, 0, win32con.KEYEVENTF_KEYUP, 0)

关于python - 在python中生成鼠标键盘组合事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2702617/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com