我只想使用tkinter绑定ASCII密钥.
我知道如何有 Select 地绑定它(每个键),甚至通过将它绑定到所有键盘键(使用<Key>
或<KeyPress>
),但问题是,我不知道如何 for each ASCII键做同样的事情.
以下是我到目前为止try 过的:
- 使用
<Key>
或<KeyPress>
绑定来捕获所有键盘键(不支持鼠标键):
import tkinter as tk
def key_press(event):
label.config(text = f'char Pressed: {event.char!r}')
label2.config(text=f'keysym Pressed: {event.keysym!r}')
root = tk.Tk()
label = tk.Label(root, text='Press a key')
label2 = tk.Label(root, text='Press a key')
label.pack()
label2.pack()
root.bind('<Key>', key_press)
root.mainloop()
- 使用每键绑定(需要首先知道名称/密钥符号,如tkinter documentation中所示):
import tkinter as tk
def key_press(event):
label.config(text = f'char Pressed: {event.char!r}')
label2.config(text=f'keysym Pressed: {event.keysym!r}')
root = tk.Tk()
label = tk.Label(root, text='Press a key')
label2 = tk.Label(root, text='Press a key')
label.pack()
label2.pack()
# here we only use the K and BackSpace key as example
root.bind('<BackSpace>', key_press)
root.bind('<K>', key_press)
root.mainloop()
如何仅使用tkinter将一个函数绑定到所有ASCII密钥?(如果可能,不使用第三方模块)