При попытке отключить виджеты Tkinter сразу после вызова функции обратного вызова (например, нажав кнопку), виджеты отключают только после цикла for в функции завершена. Пример кода:
from tkinter import *
import time
def start_forloop():
for x in range(10):
time.sleep(1)
def disable_widget():
button_start.configure(state='disabled')
entry_test.configure(state='disabled')
start_forloop()
# Window settings
app = Tk()
app.title('Test')
# Define widgets
button_start = Button(app, width=30, text='Start', command=disable_widget)
entry_test = Entry(app, width=30)
# Pack widgets
button_start.pack()
entry_test.pack()
# Start processing app
app.mainloop()
Есть ли способ отключения виджетов до окончания цикла for?