1. 程式人生 > 其它 >keyboard 鍵盤事件監聽操作

keyboard 鍵盤事件監聽操作

#安裝
# pip install keyboard
#匯入
import keyboard

#等候 阻塞作用 返回None 一直監聽
# keyboard.wait(hotkey= ,suppress= ,trigger_on_release= ) #填充hotkey 按下相對應的值結束

#繫結函式執行
# keyboard.add_hotkey(hotkey= ,callback= ,args=,suppress= ) #按下對應鍵 執行函式 arg按下輸出值

#類似wait 記錄鍵盤事件,結束時輸出鍵盤事件,如果加上until引數,可以設定當按下某按鍵時結束監聽
# keyboard.record(until='esc)

#獲取鍵盤事件
# keyboard.hook(callback= ,suppress= ,on_remove= ) #

def a(event):
print(event)
keyboard.hook(a)
keyboard.wait()

#類似hook
# keyboard.on_press(callback= , suppress=) #與hook區別:只記錄按下,不返回抬起

#
#keyboard.KeyboardEvent()

#例項:
# a = keyboard.KeyboardEvent('down', 8, 'a')
# print(a)
# def abc(x):
# if x.event_type == 'down' and x.name == a.name:
# print('success')
# keyboard.hook(abc)
# keyboard.wait()

# #錄入事件
# keyboard.start_recording()
# keyboard.stop_recording()
# #執行事件
# keyboard.replay()

# 例項:
# import keyboard,time
# keyboard.start_recording()
# time.sleep(3) #等待的時間
# a = keyboard.stop_recording()
# #執行事件
# keyboard.replay(a)
#例項2:
key = []
def a(event):
print(event)
key.append(event)
keyboard.hook(a)
keyboard.wait('ctrl')
keyboard.replay(key)
#獲取事件,輸出事件
# a = keyboard.read_key()
# print(a)
# a = keyboard.read_hotkey()
# print(a)
# a = keyboard.read_event() #獲取事件 與hook類似
# print(a)
# 例項
# keyboard._listener
# keyboard.add_hotkey('a',print,args=('aaa')) #輸出:a a a
# keyboard.wait()
# keyboard.record(until='esc')
# def test(x):
# print(x)
# keyboard.on_press(test)
# keyboard.wait()