python - 如何使用 tkinter/python 检测在键盘/鼠标上按下了哪个键?

标签 python tkinter

我正在使用 tkinter 制作一个 python 应用程序,我需要让用户选择他们将使用哪个键来执行某些特定操作。然后我想制作一个按钮,当用户单击它时,将检测到他们在键盘和鼠标中按下的下一个键,然后将其绑定(bind)到该特定操作。如何获取用户按下的键?

最佳答案

要扩展@darthmorf 的答案以便同时检测鼠标按钮事件,您需要使用 '<Button>' 为鼠标按钮添加单独的事件绑定(bind)。将在任何 鼠标按钮按下或'<Button-1>' 时触发的事件,(或 2 或 3),当按下该特定按钮时会触发(其中“1”是鼠标左键,“2”是鼠标右键,“3”是中间键……虽然我认为在 Mac 上右按钮和中间按钮交换)。

import tkinter as tk

root = tk.Tk()


def on_event(event):
    text = event.char if event.num == '??' else event.num
    label = tk.Label(root, text=text)
    label.place(x=50, y=50)


root.bind('<Key>', on_event)
root.bind('<Button>', on_event)
root.mainloop()

关于python - 如何使用 tkinter/python 检测在键盘/鼠标上按下了哪个键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72687875/

相关文章:

python - PyQt 相当于 tkinter 的 Canvas 是什么?

python - 使用Spyder IDE : SyntaxError: 'continue' not properly in loop

java - 在java中读取进程的实时输出

python - tkinter optionmenu 第一个选项消失

python - 使用 TKinter 编辑窗口

python - 在 tkinter 中从数组 Python 创建按钮

python - 手动安装pysam报错: "ImportError: No module named version"

python - Datadog python api错误信息未找到代理或无效的配置文件

javascript - 访问动态生成的 javascript 文件时遇到问题

python - tkinter 列表框用 python 拖放