如何使用可以比较的tkinter
方法中的文本注册我所写的内容示例:
if write == 'a':
print ('a')
因为我知道你想注册焦点在Entry()
上时按下了什么键。你可以使用这个代码:
from tkinter import Tk, Entry
def output(event):
print(event.char, end='')
root = Tk()
user_input = Entry(root)
user_input.pack()
user_input.bind('<Key>', output)
root.mainloop()
bind函数将在绑定事件发生时绑定小部件以执行给定函数,bind还将event
返回给该给定函数,因此被调用的函数必须有一个参数来获取该事件(即使您不打算使用它(,在这种情况下,可以使用event.char
访问字符。print的end=''
参数确保在一行中打印所有内容,因为这就是在输入框中键入内容的方式。
也不要把()
放在.bind
内函数的末尾,所以:
不要
.bind('event', function())
因为这将立即调用该函数
做
.bind('event', function)
只有在触发事件时才会调用该函数
如果你需要传递参数你可以使用lambda
,但我不会深入讨论,因为它没有那么简单,在使用之前应该理解