首页 > 解决方案 > Python/Tkinter 背景在配置为时不改变颜色

问题描述

我试图对我的朋友开一个无害的恶作剧笑话,我希望 python tkinter 窗口(不是画布)的背景每秒更改为随机颜色,然后在十轮之后,它会自行销毁。问题是当root.config(background=random_colour)被调用时,它不会改变它的背景颜色。整个代码如下:

from tkinter import *
import pyglet
import time
import random

root = Tk()
text = Label( padx = 1000, pady = 999, text = 'VIRUS!' )
text.pack()
text.config(font=('Courier', 44))
root.attributes("-fullscreen", True)
root.update()

我删掉了这一点,因为它只是 python 中所有命名颜色的列表(它被称为 COLOURS)。

for x in range(0, 9):
    colours_length = len(COLOURS)
    number = random.randint(0, colours_length)
    random_colour = COLOURS[number]
    root.config(background=random_colour)
    time.sleep(1)
    root.update()
root.destroy()

标签: pythontkinterbackgroundconfigure

解决方案


我从评论部分听取了 acw1668 的建议,现在可以了。原来标签覆盖了整个根窗口,这就是它不起作用的原因。


推荐阅读