데이터 그리드란 표 형태로 데이터를 표시하는 컨트롤입니다. PySimpleGUI는 사용하기 쉽고 강력한 GUI 라이브러리로서, 데이터 그리드 기능도 제공합니다. 이번 글에서는 PySimpleGUI에서 데이터 그리드를 어떻게 사용하는지 알아보겠습니다.
데이터 그리드 생성하기
PySimpleGUI에서 데이터 그리드를 생성하려면 sg.Table
을 사용합니다. sg.Table
은 그리드에 표시할 데이터와 열 이름을 입력하여 초기화됩니다.
import PySimpleGUI as sg
# 데이터
data = [
['John', 'Doe', 25],
['Jane', 'Smith', 30],
['Tom', 'Williams', 35]
]
# 열 이름
header = ['First Name', 'Last Name', 'Age']
# 데이터 그리드 생성
layout = [[sg.Table(values=data, headings=header, auto_size_columns=True)]]
window = sg.Window('Data Grid', layout)
while True:
event, values = window.read()
if event == sg.WINDOW_CLOSED:
break
window.close()
위의 코드에서 data
는 그리드에 표시할 데이터를 나타내고, header
는 열 이름을 나타냅니다. values
매개변수에는 데이터를, headings
매개변수에는 열 이름을 전달하여 PySimpleGUI 데이터 그리드를 초기화합니다. auto_size_columns
매개변수를 True
로 설정하면 열 너비가 자동으로 조절됩니다.
데이터 그리드 업데이트하기
데이터 그리드에서 표시되는 데이터를 업데이트해야 할 때는 update
메서드를 사용합니다. update
메서드는 그리드의 values
속성을 변경하여 데이터를 업데이트합니다.
import PySimpleGUI as sg
data = [
['John', 'Doe', 25],
['Jane', 'Smith', 30],
['Tom', 'Williams', 35]
]
header = ['First Name', 'Last Name', 'Age']
layout = [[sg.Table(values=data, headings=header, auto_size_columns=True)]]
window = sg.Window('Data Grid', layout)
while True:
event, values = window.read()
if event == sg.WINDOW_CLOSED:
break
# 데이터 업데이트
data[0][2] += 1
window['values'].update(data)
window.close()
위의 예제에서는 data[0][2]
값을 1 증가시켜 데이터를 업데이트하고, window['values'].update(data)
를 통해 데이터 그리드를 업데이트합니다.
추가 기능 사용하기
PySimpleGUI 데이터 그리드에는 추가적인 기능을 사용할 수도 있습니다. 예를 들어, 특정 행을 선택하거나 행을 정렬하는 등의 작업을 할 수 있습니다. 자세한 내용은 PySimpleGUI 문서를 참조하시기 바랍니다.
결론
PySimpleGUI를 사용하면 간단한 코드로 데이터 그리드를 생성하고 업데이트하는 것이 가능합니다. 데이터 그리드를 사용하면 많은 양의 데이터를 표시하고 관리하는 데 도움이 될 수 있습니다. PySimpleGUI의 다양한 기능을 활용하여 자신만의 데이터 그리드를 만들어보세요.