Я понял, что события нажатия клавиш и keyrelease Tk должны были срабатывать только при нажатии или отпускании клавиши?
Однако со следующим простым кодом, если я удерживаю клавишу "a", я получаю непрерывную последовательность чередующихся событий нажатия клавиш /keyrelease.
Я делаю что-то неправильно или TkInter багги? Это Python2.7 на Linux mint.
from Tkinter import *
def keyup(e):
print 'up', e.char
def keydown(e):
print 'down', e.char
root = Tk()
frame = Frame(root, width=100, height=100)
frame.bind("<KeyPress>", keydown)
frame.bind("<KeyRelease>", keyup)
frame.pack()
frame.focus_set()
root.mainloop()
Выход при нажатии и удержании "a":
down a
up a
down a
up a
down a
up a
down a
up a
etc...