Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Tkinter에서 위젯 배경색을 동적으로 변경

<시간/>

Tkinter 애플리케이션에서 위젯의 속성을 구성하려면 일반적으로 'configure(**options) ' 방법. 애플리케이션에서 위젯의 배경색, 글꼴 속성 및 기타 특정 속성을 사용자 지정할 수 있습니다.

위젯의 배경색을 동적으로 변경하려는 경우가 있을 수 있습니다. 그러나 색상 목록을 정의하고 목록을 반복하면서 색상을 변경할 수도 있습니다.

예시

#Import the required libraries
from tkinter import *
from random import shuffle
import time

#Create an instance of Tkinter frame
win = Tk()
win.geometry("700x250")

#Add fonts for all the widgets
win.option_add("*Font", "aerial")

# Define the backround color for all the widgets
def change_color():
   colors= ['#e9c46a','#e76f51','#264653','#2a9d8f','#e85d04','#a2d2ff','#06d6a0','#4d908e']
   while True:
      shuffle(colors)
      for i in range(0,len(colors)):
         win.config(background=colors[i])
         win.update()
         time.sleep(1)

#Display bunch of widgets
label=Label(win, text="Hello World", bg= 'white')
label.pack(pady= 40, padx= 30)

#Create a Button to change the background color of the widgets
btn=Button(win, text="Button", command= change_color)
btn.pack(pady= 10)
win.mainloop()

출력

위의 코드를 컴파일하면 Label 위젯과 Button이 있는 창이 표시됩니다.

Tkinter에서 위젯 배경색을 동적으로 변경

버튼을 누르면 change_color() 창의 배경색을 동적으로 변경하는 기능입니다.

Tkinter에서 위젯 배경색을 동적으로 변경