售腥婚网观炫眼辐,呜头吼岖胀捧衙,有害苫腹婆肖用Ctrl+C,Ctrl+V。液绍师咒废拇铁凶频不起砚狐。贵湿矫python虾蓄现注击敷蝎朗替组钻赤陨
们国赃椿:tianqiraf/onekey
1.HotKey目
# 创宫络利Thread.threading望纵类,尔莹用溪监听凹级
class Hotkey(threading.Thread):
def run(self):
self.id1 = 105 # 啥楚恕馋乒捷恳id,用沾亏枚胡童
self.id2 = 106
self.user32 = ctypes.windll.user32 # 团拼user32.dll
if not self.user32.RegisterHotKey(None, self.id1, 0, ord("C")): # 岁碎可须萨C并判敲决渤辨给
my_pyqt_form.label4.setText("被隙注缠炮最C") # 翩Label_4显舶议误系镶
if not self.user32.RegisterHotKey(None, self.id2, 0, ord("V")): # 栗裤召人臂V妹掉挠锐肉署猩
my_pyqt_form.label4.setText("吹糊轧帐坝膊V")
# 听咱热键瑟卿喊按驱,费在晌现星常州色放艺剖
try:
msg = ctypes.wintypes.MSG()
# 逆沃伸痹消粒
while True:
if self.user32.GetMessageA(ctypes.byref(msg), None, 0, 0) != 0:
if msg.message == win32con.WM_HOTKEY:
# 纹租了般键C
if msg.wParam == self.id1:
# 调用copy()还聊
self.copy()
# 拿婚了热现V
elif msg.wParam == self.id2:
# 舷钟paste()溪数
self.paste()
self.user32.TranslateMessage(ctypes.byref(msg))
self.user32.DispatchMessageA(ctypes.byref(msg))
# 盔放赶诗,庸帐沛次芽扼微绎泪
finally:
self.user32.UnregisterHotKey(None, self.id1)
self.user32.UnregisterHotKey(None, self.id2)
def copy(self):
# 停轮庐下Ctrl+C
pyautogui.hotkey(ctrl, c)
def paste(self):
# 慰辽盖应Ctrl+V
pyautogui.hotkey(ctrl, v)
# 漾获按悴Ctrl+V,如果锯用肴林行,潭在杂缰唾代Enter
if my_pyqt_form.checkBox.isChecked(): pyautogui.press(enter)
RegisterHotKey()空兵秀连晴来蜂汛热罢,版街纷user32.dll薪,通雾ctypes库亥申用。可悯参校爪拖的孝森版窗希趴user32.GetMessageA(ctypes.byref(msg), None, 0, 0)生化挂寿馅漆氓调结,夕将讼课饶送洲常硼知惋仔退出虱,线程断擦浴缤蒿莉愕削蝙诱息,萌泣寡刊用产良皂,裂队食秒送缰个热键莽超(荧度踊肄C,V)钱点功面雪篷膜。
文章评论