使用Python Tkinter时如何绑定/映射全局热键



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

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

但是,使用 pinput,您可以收听按键事件:

from pynput.keyboard import Listener
def on_press(key):
    print("PRESSED", key)

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

这应该是跨平台的(但有一些特定的限制)。

我想绑定/映射一个全局热键,当应用程序窗口最小化而不是专注于它时,它也可以工作。我正在寻找一种跨平台的方式。

你不能用tkinter做到这一点。Tkinter对此没有支持。

你可以试试绑定全局

安装点子安装绑定全局

具有具有完整组合的相同tkinter绑定API,但全局工作支持线程安全和tkinter主线程

最新更新