본문 바로가기

[Tkinter] 14강 grid 레이아웃 개념 이해하기

@도마22026. 1. 27. 21:00
728x90


이 강의는 Tkinter GUI 강의 14강입니다.
13강에서는 pack 옵션을 사용해 위젯 위치를 조절하는 방법을 배웠습니다.
이번 강의에서는 Tkinter의 또 다른 핵심 레이아웃 방식인
grid 레이아웃의 개념을 이해합니다.

이번 강의의 목표는 분명합니다.
grid가 어떤 기준으로 화면을 배치하는지 이해하고, 언제 써야 하는지 감각을 잡는 것입니다.


grid 레이아웃이 필요한 이유

pack 레이아웃은
위에서 아래로 쌓는 구조에 매우 편리합니다.

하지만 다음과 같은 화면을 만들려고 하면
pack만으로는 한계가 있습니다.

  • 입력창과 라벨을 나란히 배치
  • 표 형태의 화면 구성
  • 로그인 화면, 설정 화면

이런 경우에 사용하는 것이
grid 레이아웃입니다.


grid 레이아웃의 기본 개념

grid는
행(row) 열(column)을 기준으로
위젯을 배치하는 방식입니다.

마치 엑셀 표처럼
화면을 칸으로 나누고
각 칸에 위젯을 넣는 구조입니다.

핵심 개념은 다음 두 가지입니다.

  • row: 세로 줄 번호
  • column: 가로 줄 번호

번호는 0부터 시작합니다.


grid의 기본 사용 형태

grid 레이아웃은
다음과 같은 형태로 사용합니다.

위젯.grid(row=0, column=0)

이 코드는
0행 0열 위치에
위젯을 배치하겠다는 의미입니다.


간단한 grid 예제

아래 예제를 통해
grid의 기본 동작을 확인해 보겠습니다.

import tkinter as tk

window = tk.Tk()
window.geometry("300x200")

tk.Label(window, text="이름").grid(row=0, column=0)
tk.Entry(window).grid(row=0, column=1)

tk.Label(window, text="나이").grid(row=1, column=0)
tk.Entry(window).grid(row=1, column=1)

window.mainloop()

실행하면
Label과 Entry가
행과 열 기준으로 정렬되어 배치됩니다.


grid는 위치를 명확하게 제어한다

grid의 가장 큰 장점은
위젯의 위치가 매우 명확하다는 점입니다.

  • row와 column 값만 보면
  • 화면 구조가 바로 떠오릅니다.

이 때문에
입력 폼이나 설정 화면에는
grid가 매우 자주 사용됩니다.


pack과 grid의 결정적 차이

두 레이아웃의 차이를 정리하면 다음과 같습니다.

  • pack
    • 순서 기반 배치
    • 단순한 화면에 적합
  • grid
    • 행·열 기반 배치
    • 구조적인 화면에 적합

어느 것이 더 좋다기보다는
용도가 다릅니다.


grid 사용 시 반드시 지켜야 할 규칙

grid를 사용할 때
아주 중요한 규칙이 하나 있습니다.

같은 부모 위젯 안에서는
pack과 grid를 함께 사용할 수 없습니다.

이 규칙을 어기면
프로그램이 정상적으로 동작하지 않습니다.


grid를 언제 사용하면 좋은가

grid는
다음과 같은 화면에 특히 적합합니다.

  • 로그인 화면
  • 설정 화면
  • 입력 폼(Form)
  • 표 형태의 정보 출력

지금 단계부터
pack과 grid를 상황에 맞게
선택하는 감각을 기르면 좋습니다.


이번 강의 핵심 정리

이번 강의에서 꼭 기억해야 할 내용입니다.

  • grid는 행(row)과 열(column) 기준 배치 방식이다
  • row와 column 번호는 0부터 시작한다
  • 구조적인 화면에는 grid가 적합하다
  • pack과 grid는 같은 부모에서 함께 쓸 수 없다

다음 강의 예고

다음 강의에서는
grid 옵션을 사용해 여백과 정렬을 조절하는 방법을 배웁니다.

이제 grid가
단순 배치가 아니라
정돈된 UI 도구로 변합니다.


728x90
도마2
@도마2 :: 도마의 코드노트

초보자를 위한 코딩 강의를 정리합니다. 파이썬부터 C#, Unity 게임 제작까지 차근차근 기록합니다. — 도마

목차