#python #tkinter #events
Вопрос:
Я хочу отключить событие lt;KeyReleasegt; только при нажатии клавиши enter, потому что у меня есть две функции, которые используют событие lt;KeyReleasegt;lt;Returngt; или событие lt;Returngt;lt;KeyReleasegt;, но когда я нажимаю enter для активации функции, которая использует событие lt;KeyReleasegt;lt;Returngt;, другая функция, которая активируется с событием lt;Returngt;lt;KeyReleasegt;, также активируется, и это проблема. Все, что я искал, просто говорило об отключении определенного ключа, но мне нужно, чтобы клавиша ввода была включена для активации одной из функций.
import tkinter as tk root = tk.Tk() root.geometry("500x500 0 0") def function1(e): print('hi') def function2(e): print('hello') root.bind("lt;Returngt;", function1) root.bind("lt;KeyReleasegt;", function2) root.mainloop()
Ответ №1:
Вы можете выйти, function2
если была нажата клавиша Enter. Для этого вы можете проверить keysym
свойство события:
def function2(e): if e.keysym == 'Return': return print('hello')