@roman94

Как менять цвет окна в цикле Tkinter?

Есть кусок кода, запускающий окно
from tkinter import *

root = Tk()
root.title("Test")
root["bg"] = "black"
root.geometry("800x800+0+0")

root.mainloop()

Сейчас окно залито черным. Как сделать так, чтобы цвет менялся каждые 2 секунды?
То есть чтобы я запустил окно, и цвет меняется с черного на белый каждые 2 секунды, пока не закрою программу?
  • Вопрос задан
  • 2580 просмотров
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
from itertools import cycle
import tkinter as tk


colors = cycle(['red', 'green', 'blue'])

def change_color():
    root['bg'] = next(colors)
    root.after(2000, change_color)


root = tk.Tk()
root.title("Test")
root.geometry("800x800+0+0")

change_color()

root.mainloop()
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы