Я работал с Tkinter и, в частности, с привязкой событий нажатия и отпускания клавиш к функциям, но у меня возникла проблема.
У меня есть функция, которая добавляет нажатый символ в список, чтобы я мог проверить, что все была нажата позже, но, похоже, в некоторых случаях он работает, но не работает в других. Например, если я нажимаю клавишу a
, затем клавишу b
, затем клавишу j
, все регистрируется отлично.
Но когда я пытаюсь нажать клавишу n
после a
& b
, он даже не регистрирует нажатие клавиши.
Here is my code:
def _on_key_press(self, e):
self.last_key_pressed = e.char
if e.char not in self.keys_down:
self.keys_down.append(e.char)
print(self.keys_down)
Эта функция привязана к окну верхнего уровня, например self.bind("<KeyPress>", self._on_key_press)
. Почему возникает такое поведение? есть ли способ исправить?