이번 포스트에서는 파이썬의 PySimpleGUI 라이브러리를 사용하여 간단한 메신저 애플리케이션을 만들어 보겠습니다. PySimpleGUI는 사용하기 쉽고 직관적인 사용자 인터페이스를 구축할 수 있는 파이썬 GUI 라이브러리입니다.
필요한 패키지 설치하기
먼저 PySimpleGUI를 설치해야 합니다. 다음 명령어를 사용하여 설치할 수 있습니다.
pip install PySimpleGUI
애플리케이션 구현하기
이제 메신저 애플리케이션을 구현해 보겠습니다.
import PySimpleGUI as sg
# 채팅 기록을 저장할 리스트
chat_history = []
# 채팅창 구성 요소
layout = [
[sg.Listbox(values=chat_history, size=(50, 20), key='-CHAT-', enable_events=True)],
[sg.Input(key='-INPUT-', size=(50, 1)), sg.Button('Send')]
]
# 윈도우 생성
window = sg.Window('Messenger', layout)
# 이벤트 루프
while True:
event, values = window.read()
# 윈도우를 닫을 때 애플리케이션 종료
if event == sg.WINDOW_CLOSED:
break
# Send 버튼을 클릭하면 메시지를 전송
if event == 'Send':
message = values['-INPUT-']
# 메시지를 리스트에 추가
chat_history.append(message)
# 리스트 박스 업데이트
window['-CHAT-'].update(values=chat_history)
# 입력 필드 초기화
window['-INPUT-'].update('')
# 윈도우 닫기
window.close()
위 코드는 PySimpleGUI를 사용하여 채팅창을 만드는 코드입니다. chat_history
라는 리스트를 생성하여 채팅 기록을 저장하고, layout
변수에는 채팅창의 구성 요소를 정의합니다. 이후에는 윈도우를 생성하고 이벤트 루프를 통해 사용자의 입력을 처리합니다. “Send” 버튼을 클릭하면 입력한 메시지를 chat_history
에 추가하고 채팅창을 업데이트합니다.
실행하기
위 코드를 messenger.py
라는 이름으로 저장한 후, 터미널에서 다음 명령어를 실행하여 애플리케이션을 실행할 수 있습니다.
python messenger.py
애플리케이션이 실행되면 채팅창과 메시지 입력 필드, “Send” 버튼이 나타납니다. 메시지를 입력한 후 “Send” 버튼을 클릭하면 채팅창에 입력한 메시지가 추가되는 것을 확인할 수 있습니다.
마무리
이번 포스트에서는 PySimpleGUI를 사용하여 간단한 메신저 애플리케이션을 만들어 보았습니다. PySimpleGUI는 사용하기 쉽고 직관적인 인터페이스를 제공하여 파이썬으로 GUI 애플리케이션을 개발할 때 유용한 도구입니다. 더 많은 기능을 활용하여 보다 복잡한 애플리케이션을 개발할 수도 있으니, 관심이 있다면 공식 문서를 참고해 보시기 바랍니다.