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

Tkinter로 프롬프트 대화 상자 만드는 방법 완벽 가이드

대화 상자(Dialog Box)는 사용자에게 특정 작업을 수행하도록 안내할 때 매우 유용한 도구입니다. 우리는 이미 다양한 프로그램에서 대화 상자를 여러 번 접하고 사용해 왔습니다. Tkinter 애플리케이션에서는 메시지 박스(Message), 사용자 입력 대화 상자(User Interaction Dialogs), 단일 값 입력 대화 상자(Single Value Entry Dialogs), 파일 선택기(File Chooser) 등 원하는 종류의 대화 상자를 자유롭게 만들 수 있습니다.

Tkinter는 이러한 대화 상자를 손쉽게 구현할 수 있도록 messagebox, simpledialog, filedialog, colorchooser와 같은 내장 패키지를 기본적으로 제공합니다.

예제 코드

다음 예제에서는 사용자에게 옵션을 선택하도록 안내하는 메시지 박스를 만들어 보겠습니다.

# tkinter 라이브러리 임포트
from tkinter import *
from tkinter import messagebox

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

# 창 크기 설정
win.geometry("750x250")

# 질문형 메시지 박스 호출
answer = messagebox.askyesno("Question", "Do you like Python Tkinter?")

# 라벨 생성 및 결과 표시
Label(win, text=answer, font=('Georgia 20 bold')).pack()

win.mainloop()

실행 결과

위 코드를 실행하면 화면에 프롬프트 대화 상자가 나타납니다. 사용자가 [예(Yes)] 또는 [아니오(No)] 버튼 중 하나를 클릭하면, 선택 결과에 따라 불리언(Boolean) 값이 반환됩니다.

[예]를 클릭하면 1(True), [아니오]를 클릭하면 0(False)이 반환되며, 이 값은 Tkinter 창의 라벨에 그대로 출력됩니다.

핵심 포인트 정리

- messagebox.askyesno(): 예/아니오를 선택받는 대화 상자를 생성합니다.
- 반환값은 True(1) 또는 False(0) 형태의 불리언 값입니다.
- 이 값을 활용하면 사용자의 선택에 따라 조건 분기 로직을 쉽게 구현할 수 있습니다.
- 그 외에도 askokcancel(), showinfo(), showerror() 등 다양한 메서드로 상황에 맞는 대화 상자를 만들 수 있습니다.