위젯이 상속하는 Misc 클래스의 winfo_children 메서드는 해당 위젯에 포함되어 있는 위젯 또는 프레임 리스트를 반환합니다.
아래는 LabelFrame 내 5개 Lable의 text와 foreground 속성값을 winfo_children 메서드를 이용해 변경하는 코드입니다.
# python 3.8.6
import tkinter as tk
import tkinter.ttk as ttk
class MainWin(tk.Tk):
def __init__(self):
tk.Tk.__init__(self)
self.setting_win()
self.setting_win_widgets()
def setting_win(self):
self.title('tkinter (things-studio.tistory.com)')
self.geometry('480x320+200+200')
self.minsize(200, 200)
# start -------------------------------------------------------------------
def setting_win_widgets(self):
labelframe = ttk.Labelframe(self, text='ttk.LabelFrame', labelanchor='ne')
labelframe.grid(padx=10, pady=10)
for i in range(1, 6):
if i % 2:
ttk.Label(labelframe, text='Label ' + str(i)).grid(padx=10, pady=10)
else:
ttk.Label(labelframe, text='Label ' + str(i)).grid(padx=10)
for child in labelframe.winfo_children():
child.configure(text=child['text'] + ', blue')
child.configure(foreground='blue')
# end ---------------------------------------------------------------------
if __name__ == '__main__':
MainWin().mainloop()
'코딩 > 파이썬 tkinter' 카테고리의 다른 글
[Tkinter] 20장. 위젯 속성(옵션) 설정 방법 (0) | 2020.11.29 |
---|---|
[Tkinter] 19장. tkinter 제어 변수 (0) | 2020.11.29 |
[Tkinter] 17장. LabelFrame (0) | 2020.11.16 |
[Tkinter] 16장. Radiobutton (0) | 2020.11.15 |
[Tkinter] 15장. Checkbutton (0) | 2020.11.15 |