[python] Tkinter 그리드 레이아웃

Tkinter는 Python에서 GUI 프로그래밍을 위해 사용되는 표준 라이브러리입니다. Tkinter를 사용하여 다양한 위젯을 배치하기 위해 그리드 레이아웃을 활용할 수 있습니다. 그리드 레이아웃은 테이블 형태로 위젯을 배치하는 방법으로, 행(row)과 열(column)의 개념을 사용합니다.

그리드 레이아웃 구성 요소

Tkinter에서 그리드 레이아웃을 사용하기 위해 다음과 같은 구성 요소를 알아야 합니다.

예제 코드

다음은 Tkinter를 사용하여 그리드 레이아웃을 구성하는 예제 코드입니다.

import tkinter as tk

window = tk.Tk()

# 레이블 위젯 생성
label1 = tk.Label(window, text="Label 1")
label2 = tk.Label(window, text="Label 2")
label3 = tk.Label(window, text="Label 3")

# 레이블 위젯을 그리드에 배치
label1.grid(row=0, column=0, padx=10, pady=10, sticky="w")
label2.grid(row=0, column=1, padx=10, pady=10, sticky="e")
label3.grid(row=1, column=0, columnspan=2, padx=10, pady=10)

window.mainloop()

위 코드에서는 Tk() 함수를 사용하여 윈도우를 생성하고, Label() 함수를 사용하여 레이블 위젯을 생성합니다. 그리고 grid() 메서드를 사용하여 레이블 위젯을 그리드에 배치합니다. rowcolumn 매개변수를 사용하여 행과 열 위치를 지정하고, padxpady 매개변수를 사용하여 가로와 세로 여백을 지정합니다. 또한 sticky 매개변수를 사용하여 위젯의 정렬 방식을 지정할 수 있습니다.

참고 자료