이 글은 PySimpleGUI를 활용하여 영화 예매 애플리케이션을 만드는 방법에 대해 알아보겠습니다.
목차
1. PySimpleGUI란?
PySimpleGUI는 Python 언어를 기반으로 한 사용자 인터페이스(GUI) 개발 라이브러리입니다. 이 라이브러리를 사용하면 사용자가 편리하게 그래픽 사용자 인터페이스를 만들 수 있습니다.
2. 영화 예매 애플리케이션 개요
이번 예제에서는 PySimpleGUI를 사용하여 간단한 영화 예매 애플리케이션을 만들 것입니다. 사용자는 영화 제목, 상영 일자 및 시간, 좌석 등을 선택한 후 결제를 진행할 수 있습니다.
3. 영화 정보 입력 및 예매 기능 구현
먼저, PySimpleGUI를 설치한 후 아래 예제 코드를 작성합니다.
import PySimpleGUI as sg
# 윈도우 레이아웃 정의
layout = [[sg.Text('영화 제목'), sg.Input(key='-TITLE-')],
[sg.Text('상영 일자 및 시간'), sg.Input(key='-DATETIME-')],
[sg.Text('좌석'), sg.Input(key='-SEAT-')],
[sg.Button('예매')]]
# 윈도우 생성
window = sg.Window('영화 예매 애플리케이션', layout)
# 이벤트 루프
while True:
event, values = window.read()
if event == sg.WINDOW_CLOSED:
break
if event == '예매':
title = values['-TITLE-']
datetime = values['-DATETIME-']
seat = values['-SEAT-']
# 예매 기능 구현
print(f'{title} 영화 예매 완료! 상영 일자: {datetime}, 좌석: {seat}')
window.close()
위 코드에서 layout
변수에는 윈도우에 표시될 UI 요소들이 정의되어 있습니다. 사용자는 영화 제목
, 상영 일자 및 시간
, 좌석
정보를 입력한 후 예매
버튼을 클릭할 수 있습니다.
예매 버튼을 클릭하면 입력된 정보들이 출력되며, 이 부분에 실제로 예매 기능을 구현해야 합니다.
4. 결제 기능 추가
영화 예매 기능이 정상적으로 작동한다면, 이제 결제 기능을 추가할 차례입니다. 사용자가 예매 버튼을 클릭했을 때, 결제 창이 뜨고 결제를 완료할 수 있도록 아래 예제 코드를 추가합니다.
import PySimpleGUI as sg
# (이전 코드 생략)
if event == '예매':
title = values['-TITLE-']
datetime = values['-DATETIME-']
seat = values['-SEAT-']
# 결제 기능 구현
layout = [[sg.Text('결제 정보')],
[sg.Text(f'영화: {title}')],
[sg.Text(f'상영 일자 및 시간: {datetime}')],
[sg.Text(f'좌석: {seat}')],
[sg.Button('결제')]]
window = sg.Window('결제', layout)
event, values = window.read()
if event == sg.WINDOW_CLOSED:
break
if event == '결제':
# 결제 로직 구현
print('결제 완료!')
# (이후 코드 생략)
위 코드에서는 예매
버튼을 클릭했을 때 결제 정보
가 포함된 창이 새로 뜨도록 구현되어 있습니다. 사용자는 여기서 결제
버튼을 클릭하여 결제를 진행할 수 있습니다.
5. 결과 및 마무리
위 예제 코드를 실행하면 간단한 영화 예매 애플리케이션이 실행됩니다. 사용자는 영화 제목, 상영 일자 및 시간, 좌석을 선택한 후 예매를 진행할 수 있습니다. 예매 완료 시, 해당 정보와 함께 결제를 진행할 수 있는 창이 열리게 됩니다.
이처럼 PySimpleGUI를 활용하면 Python으로 간편한 GUI 애플리케이션을 개발할 수 있습니다.