python 热键和键盘监听

热键

热键一般搭配线程来使用,下面我们使用线程池来使用热键:

from concurrent.futures import ThreadPoolExecutor
from pynput import keyboard

    def getHwnd(self):        
        print('你好')        
        
    def keyboardListen(self):
        keyboard.add_hotkey('1', getHwnd)#按下热键1,就运行getHwnd方法
        keyboard.wait('`')  # 按下热键 ` 结束热键监听
        
 with ThreadPoolExecutor(1) as executor2:  # 开启2个线程,需要跟括号的2对应,此处不可以用协程
        executor2.submit(keyboardListen)  # 键盘监听线程,运行keyboardListen方法

键盘监听

监听事件:

from pynput import keyboard

# 键盘输入监听
    def keyboardListener(self):
        while True:
            with keyboard.Listener(on_press=self.on_press, on_release=self.on_release) as listener:
                listener.join()                

    def on_press(self,key):
        print('按下了:',key)

    def on_release(self,key):
        print('松开了',key.char)
        if key.char=='1':
            print('事件1')
            return False
        elif key.char=='2':
            print('事件2')
            return False

调用:

keyboardListener()

最后,热键和键盘监听实现的功能都一样,这里推荐使用热键

你可能感兴趣的:(python)