【问题标题】:Change background to a random colour via a Button通过按钮将背景更改为随机颜色
【发布时间】:2022-07-11 21:35:14
【问题描述】:

正如您在标题中看到的那样,每次按下按钮时,我都会尝试将框架的背景设置为随机颜色。我设置了一个保存颜色的变量。我对此进行了测试,并且每次都会打印出不同的随机颜色。但是当我将它分配给按钮时,什么都没有改变..

import random
from tkinter import *


def overlord():

counter = 0

main_frame = Tk()

main_frame.title("I'm bored pls Help")
main_frame.attributes("-fullscreen", True)
# main_frame.config(background="black")

counter_l = Label(text=counter)

random_colour_b = Button(main_frame, bg="black", fg="gold", text="Click Me!", font="Arial 20",
                         command=lambda: random_colour_b)
exit_b = Button(text="Kill Me!", bg="black", fg="red", font="Arial 20", command=main_frame.destroy)

counter_l.pack()

random_colour_b.pack()
exit_b.pack()

main_frame.mainloop()

这就是我的 Frame 功能。我似乎找不到告诉我如何使用按钮更改框架背景的答案。有人有想法吗?

【问题讨论】:

    标签: python tkinter button background-color


    【解决方案1】:
    from random import choice
    from tkinter import *
    
    
    def overlord():
        counter = 0
    
        main_frame = Tk()
    
        main_frame.title("I'm bored pls Help")
        main_frame.attributes("-fullscreen", True)
    
        counter_l = Label(text=counter)
    
        random_colour_b = Button(
            main_frame, bg="black", fg="gold", text="Click Me!", font="Arial 20",
            command=lambda: main_frame.config(background=choice(["black", "white"]))
        )
        exit_b = Button(text="Kill Me!", bg="black", fg="red", font="Arial 20", command=main_frame.destroy)
    
        counter_l.pack()
    
        random_colour_b.pack()
        exit_b.pack()
    
        main_frame.mainloop()
        
        
    overlord()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-07
      • 2015-06-04
      • 1970-01-01
      • 2016-04-05
      • 2021-06-22
      相关资源
      最近更新 更多