Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Tkinter에서 데이터를 표 형태로 표시하는 가장 좋은 방법

일반적으로 데이터는 표(테이블) 형태로 표현됩니다. 표는 행과 열의 집합으로 구성되며, 데이터는 행과 열의 구조에 따라 순차적으로 저장됩니다.

예를 들어 Tkinter 애플리케이션을 개발하면서 학생 정보를 표에 저장해야 하는 상황을 가정해 보겠습니다. 이 표는 학생의 이름(FName), 성(LName), 학번(Roll No)을 저장하는 3개의 열로 구성됩니다.

이런 표 형태의 데이터를 화면에 표시할 때 가장 널리 쓰이는 방법은 바로 ttk.Treeview 위젯입니다. Treeview는 show='headings' 옵션과 함께 사용하면 열 제목이 있는 표처럼 동작하며, 행 단위로 데이터를 손쉽게 삽입·관리할 수 있어 Tkinter에서 사실상 표준적인 테이블 구현 방식으로 꼽힙니다.

예제 코드

# 필요한 라이브러리 임포트
from tkinter import *
from tkinter import ttk

# tkinter 프레임 인스턴스 생성
win = Tk()

# 윈도우 크기 설정
win.geometry("700x350")

# Style 위젯 객체 생성 및 테마 적용
style = ttk.Style()
style.theme_use('clam')

# Treeview 위젯 생성
tree = ttk.Treeview(win, column=("FName", "LName", "Roll No"), show='headings', height=5)
tree.column("# 1", anchor=CENTER)
tree.heading("# 1", text="FName")
tree.column("# 2", anchor=CENTER)
tree.heading("# 2", text="LName")
tree.column("# 3", anchor=CENTER)
tree.heading("# 3", text="Roll No")

# Treeview 위젯에 데이터 삽입
tree.insert('', 'end', text="1", values=('Amit', 'Kumar', '17701'))
tree.insert('', 'end', text="1", values=('Ankush', 'Mathur', '17702'))
tree.insert('', 'end', text="1", values=('Manisha', 'Joshi', '17703'))
tree.insert('', 'end', text="1", values=('Shivam', 'Mehrotra', '17704'))

tree.pack()

win.mainloop()

실행 결과

위 코드를 실행하면 학생 데이터가 담긴 표가 포함된 창이 나타납니다.

Tkinter에서 데이터를 표 형태로 표시하는 가장 좋은 방법

핵심 정리

  • ttk.Treeview: Tkinter에서 표 형태의 데이터를 표시하는 대표적인 위젯입니다.
  • show='headings': 트리 구조 대신 열 헤더가 있는 표 형태로 표시합니다.
  • tree.insert(): 새로운 행을 추가할 때 사용하며, values 인자에 각 열의 데이터를 전달합니다.
  • 확장성: 스크롤바 연결, 행 선택 이벤트 처리, 데이터베이스 연동 등과 함께 활용하면 실무적인 데이터 관리 화면을 쉽게 구성할 수 있습니다.