저는 Python을 취미 삼아 공부하는 연식이 꽤 지난 어른아이로서,
언제 어디서나 공부한 내용을 찾아보기 쉽도록 제 나름대로 정리하여 블로그에 포스팅하고 있습니다.
Frame 위젯은 여러 위젯을 그룹화하는 컨테이너 위젯으로 사용됩니다.
Frame 위젯은 pack()의 속성값을 통해 높이와 넓이를 조정할 수 있습니다.
Frame 위젯으로 package 된 여러 위젯은 grid()를 통해 위치를 조정할 수 있습니다.
LableFrame 위젯은 명칭을 지정할 수 있지만, Frame 위젯은 명칭을 지정할 수 없습니다.
from tkinter import *
root = Tk()
root.title("Tkinter") # 타이틀
root.iconbitmap("./Tkinter/xingtu_icon.ico") # 타이틀 앞에 아이콘 표시
root.geometry("360x240+100+100") # 가로크기 * 세로크기 + 화면 x좌표 + 화면 y좌표
root.resizable(False, False) # x(너비), y(높이) 값 변경 불가 (창 크기 변경 불가)
# LabelFrame : 위젯을 그룹화하는 컨테이너 위젯으로 이름을 표시할 수 있다.
label_frame = LabelFrame(root, text="컨테이너 위젯(그룹)", padx=20, pady=20) # inside
# fill="both" : frame의 높이를 꽉 차게 조정 / expand=True: frame의 넓이를 꽉 차게 조정
label_frame.pack(side="left", fill="both", expand=True, padx=5, pady=5) # outside
# Frame 위젯 안에서는 grid()를 사용할 수 있다.
click1 = Button(label_frame, text="버튼1", bg="#000000", fg="#ffffff")
click1.grid(row=0, column=0)
click2 = Button(label_frame, text="버튼2", bg="#ffffff", fg="#000000")
click2.grid(row=1, column=1)
click3 = Button(label_frame, text="버튼3", bg="#000000", fg="#ffffff")
click3.grid(row=2, column=2)
# Frame : 위젯을 그룹화하는 컨테이너 위젯으로 이름을 표시할 수 없다.
frame = Frame(root, padx=20, pady=20, relief="solid", bd=1) # inside
# fill="both" : frame의 높이를 꽉 차게 조정 / expand=True: frame의 넓이를 꽉 차게 조정
frame.pack(side="right", fill="both", expand=True, padx=5, pady=5) # outside
# Frame 위젯 안에서는 grid()를 사용할 수 있다.
click4 = Button(frame, text="버튼4", bg="#000000", fg="#ffffff")
click4.grid(row=0, column=0)
click5 = Button(frame, text="버튼5", bg="#ffffff", fg="#000000")
click5.grid(row=1, column=1)
click6 = Button(frame, text="버튼6", bg="#000000", fg="#ffffff")
click6.grid(row=2, column=2)
# 생성된 프로그램을 순회
root.mainloop()
저는 Python을 취미 삼아 공부하는 연식이 꽤 지난 어른아이로서,
언제 어디서나 공부한 내용을 찾아보기 쉽도록 나름대로 정리하여 블로그에 포스팅하고 있습니다.