Tkinter는 파이썬의 대표적인 GUI 모듈입니다. 사용자의 동작이나 실행 중인 프로그램의 상태 변화에 반응해 다양한 형태의 메시지를 화면에 표시할 수 있으며, 특히 messagebox 클래스를 활용하면 확인 메시지, 오류 메시지, 경고 메시지 등 여러 종류의 알림 창을 손쉽게 구현할 수 있습니다.
예제 1: 스타일이 적용된 사용자 지정 메시지
다음 예제는 배경색, 글꼴 크기, 글꼴 스타일 등을 자유롭게 설정하여 메시지를 표시하는 방법을 보여줍니다.
import tkinter as tk
main = tk.Tk()
key = "the key to success is to focus on goals and not on obstacles"
message = tk.Message(main, text=key)
message.config(bg='white', font=('times', 32, 'italic'))
message.pack()
tk.mainloop()
위 코드를 실행하면 흰색 배경에 이탤릭체 타임스 글꼴로 지정한 문구가 출력되는 것을 확인할 수 있습니다.

예제 2: 표준 메시지 박스 활용하기
아래 예제들은 정보 표시, 오류 알림 등 표준화된 메시지 창을 띄우는 방법입니다. messagebox 클래스는 용도에 따라 서로 다른 전용 함수를 제공하므로, 상황에 맞는 함수를 선택해 사용하면 됩니다.
질문 상자 (Question Box)
askquestion() 함수를 사용하면 사용자에게 질문을 던지고 '예(Yes)' 또는 '아니요(No)'로 답변을 받을 수 있습니다.
from tkinter.messagebox import *
print(askquestion("Question", "Proceed to next Step?"))
위 코드를 실행하면 다음과 같은 결과가 나타납니다.

재시도 상자 (Retry Box)
askretrycancel() 함수는 작업이 실패했을 때 다시 시도할지 여부를 묻는 창을 표시합니다.
from tkinter.messagebox import *
print(askretrycancel("Retry", "Try Again?"))
위 코드를 실행하면 다음과 같은 결과가 나타납니다.

오류 상자 (Error Box)
showerror() 함수를 사용하면 오류가 발생했음을 알리는 창을 띄울 수 있습니다.
from tkinter.messagebox import *
print(showerror("Error", "Error in checkout"))
위 코드를 실행하면 다음과 같은 결과가 나타납니다.

경고 상자 (Warning Box)
showwarning() 함수는 잠재적인 문제나 주의 사항을 사용자에게 알려야 할 때 사용합니다.
from tkinter.messagebox import *
print(showwarning("Warning", "This may result in delay !"))
위 코드를 실행하면 다음과 같은 결과가 나타납니다.

메시지 박스 함수 한눈에 정리
| 함수 | 용도 |
|---|---|
| askquestion() | 사용자에게 질문하고 예/아니요 답변 받기 |
| askretrycancel() | 작업 재시도 여부 확인 |
| showerror() | 오류 발생 알림 |
| showwarning() | 경고 및 주의 사항 알림 |
이처럼 Tkinter의 messagebox 클래스를 활용하면 복잡한 설정 없이도 데스크톱 애플리케이션에 직관적인 알림 기능을 빠르게 추가할 수 있습니다.