Во-первых, вам не хватает оператора global
(так как вы хотите изменить глобальный running
), и у вас неверный синтаксис ==
против =
:
def check():
global running
if running:
if FourInRow:
running = False
else:
print("A")
window.after(100, check)
Во-вторых,вам не нужна многопоточность, поскольку window.after(...)
будет повторять этот код до тех пор, пока running
равен True
, а FourInRow
не True
.Если вам нужно, чтобы он выходил за рамки этого, обведите оператор window.after(...)
настолько, насколько это необходимо.Вы можете инициировать это временное событие, вызвав check()
на верхнем уровне вашего кода, непосредственно перед тем, как передать управление в цикл событий tkinter.