python - 如何让程序在后台监听键盘事件?
问题描述
我正在制作一个程序,当我按下自己的快捷键 (ctrl+q) 时会执行多个键盘操作。当程序在后台时,如何让我的程序监听绑定?
def pasteFun(event):
messagebox.showinfo("hey")
root.bind("<Control-q>", pasteFun)
当我在程序中时这很好用,但是当我最小化它时, ctrl+q 什么都不做。
def test(event):
messagebox.showinfo("hey","hey")
root.bind_all("<Control-q>",test)
我已经尝试过 root.bind、frame.bind 和 root.bind_all,但是当程序处于后台/最小化时,我的绑定什么也不做。
当我在程序之外并点击我的绑定/快捷方式时,我需要一个函数来运行。
解决方案
我正在制作一个程序,当我按下自己的快捷键 (ctrl+q) 时会执行多个键盘操作。当程序在后台时,如何让我的程序监听绑定?
你不能用 tkinter 做到这一点。Tkinter 只有在获得焦点时才会看到事件。这是其设计的基本部分。
推荐阅读
- python - 如何在 Python 中获得 Kruskal Wallis 测试的效果大小?
- javascript - 获取对象的特定属性以进行绘图
- amazon-web-services - 获取 AWS S3 存储桶的 CLI 配置
- elasticsearch - Elasticsearch 备份 - 800gb 索引,剩余 200gb 磁盘空间
- swift - 使用主键列表过滤从领域中查询多个对象
- css - 基于悬停选择 SVG 的另一部分不起作用
- flutter - MappedListIterable 不是子类型
- ld - ld:找不到-lelementary的库
- python - 将 curl 命令转换为 python 请求时遇到问题
- java - Listview 在折叠单元库中表现不佳