1 Star 1 Fork 1

vencol/pywechat

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
demo_keyboard.py 1.05 KB
一键复制 编辑 原始数据 按行查看 历史
vencol 提交于 2024-03-31 11:56 . 使用信号方式快速停止程序运行
import os,sys
import signal
from pynput import keyboard
g_quit_pid = None
def on_press(key):
global g_quit_pid
if key == keyboard.Key.esc:
# 释放了esc 键,停止监听
if g_quit_pid:
os.kill(g_quit_pid, signal.SIGINT)
return False
# try:
# print('字母键: {} 被按下'.format(key.char))
# except AttributeError:
# print('特殊键: {} 被按下'.format(key))
def on_release(key):
# print('{} 释放了'.format(key))
if key == keyboard.Key.esc:
# 释放了esc 键,停止监听
return False
def keyboard_listen_init(on_quit):
# # 方式1:构造监听器对象listener
# with keyboard.Listener(on_press=on_press, on_release=on_release) as listener:
# # 开始监听
# # 监听启动方式1:阻断式
# listener.join()
global g_quit_pid
g_quit_pid = on_quit
# 方式2:构造监听器对象listener
listener = keyboard.Listener(on_press=on_press, on_release=on_release)
# 监听启动方式2:非阻断式
listener.start()
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/vencol/pywechat.git
git@gitee.com:vencol/pywechat.git
vencol
pywechat
pywechat
master

搜索帮助

0d507c66 1850385 C8b1a773 1850385