python - 使用 Python Tkinter 时如何绑定(bind)/映射全局热键?

标签 python tkinter cross-platform global-hotkey

我想绑定(bind)/映射一个全局热键,它在应用程序窗口最小化且用户不关注它时也有效。我正在寻找一种跨平台的方式。我可以使用 Tkinter 执行此操作吗?

最佳答案

使用 tkinter,如果窗口没有键盘焦点,它将不会收到按键事件,因此您将无法执行您想要的操作。

但是,使用 pynput 你可以监听按键事件:

from pynput.keyboard import Listener

def on_press(key):
    print("PRESSED", key)


with Listener(on_press=on_press) as listener:
    listener.join()

这应该是跨平台的(但有一些 patform specific limitations )。

关于python - 使用 Python Tkinter 时如何绑定(bind)/映射全局热键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53995857/

相关文章:

python - 向旧 csv 文件添加新行

python - 使用youtube_dl提取信息时出错

python - 尝试在 Python 中使用 LetsEncrypt 运行 SSL 包装的 BaseHTTPServer 失败

algorithm - 推荐一些类似于 Bresenham 的二维球面映射算法?

python - 如何在 TensorFlow 中将 Tensor 变量初始化为单位矩阵

python - tkinter 使用 ID 设置焦点

python - 属性错误 : 'NoneType' object has no attribute 'delete'

gcc - 编译器如何跨平台(硬件)?

c++ - ntohl() 的跨平台版本? - C++

python - Tkinter Canvas 问题