🖥️ 파이썬 Tkinter: GUI 프로그래밍으로 나만의 데스크톱 앱 만들기
안녕하세요! 이제 텍스트 기반 콘솔을 넘어, 버튼을 누르고 이미지를 볼 수 있는 직관적인 GUI 앱을 직접 만들어보세요. 오늘은 Python 기본 GUI 라이브러리, Tkinter를 사용한 데스크톱 애플리케이션 제작 방법을 알려드립니다.
📌 목차
- GUI란 무엇인가?
- 콘솔 vs GUI
- Tkinter 기본 구조: 윈도우와 위젯
- 레이아웃 배치(pack, grid, place)
- 다양한 위젯(Button, Entry, Canvas 등)
- 이벤트 처리 및 애니메이션
- 마무리 요약
💡 GUI(Graphical User Interface)란?
GUI는 그래픽 요소(버튼, 창, 아이콘 등)를 이용해 직관적인 방식으로 사용자와 상호작용할 수 있게 해줍니다. 명령어 입력 없이도 마우스 클릭이나 키보드 조작만으로도 앱을 제어할 수 있어, 사용자 친화적입니다.
🐍 Tkinter: 파이썬의 기본 GUI 라이브러리
Tkinter는 별도 설치 없이 사용할 수 있는 파이썬 내장 GUI 도구입니다.
import tkinter as tk
root = tk.Tk()
root.title("나의 첫 Tkinter 앱")
root.geometry("400x300")
root.mainloop()
📦 위젯과 레이아웃 배치
✅ Label 위젯 예시
label = tk.Label(root, text="Hello, Tkinter!")
label.pack()
📐 pack() 사용법
tk.Label(window, text="Hello, world!").pack(padx=20, pady=20)
📊 grid() 예시
tk.Label(window, text="이름:").grid(row=0, column=0)
tk.Entry(window).grid(row=0, column=1)
📌 place() 예시
btn.place(x=100, y=50)
🛠️ 다양한 위젯 사용법
🔘 버튼(Button) 클릭 이벤트
def button_click():
label.config(text="버튼이 클릭되었습니다!")
📝 Entry 입력값 가져오기
user_input = entry.get()
✅ CheckButton & RadioButton
복수 선택: CheckButton / 단일 선택: RadioButton
🎨 캔버스(Canvas)에 그리기
canvas.create_oval(50, 50, 150, 150, fill="yellow")
canvas.create_rectangle(200, 100, 350, 200, fill="green")
canvas.create_text(200, 250, text="캔버스에 그리기")
📂 메뉴(Menu) 만들기
filemenu.add_command(label="새 파일", command=new_file)
🎮 이벤트 처리 & 애니메이션
🎹 키보드 이벤트 처리
def move_ball(event):
if event.keysym == 'Left':
canvas.move(ball, -10, 0)
🏃♂️ 애니메이션 처리
canvas.move(ball, x, y) # 반복적으로 이동
✅ 마무리 요약
- Tkinter는 설치 없이 바로 사용 가능!
- 루트 윈도우 생성 → 위젯 추가 → 레이아웃 배치 → 이벤트 처리
- 직관적이고 유저 친화적인 데스크톱 앱을 만들 수 있음
이제 여러분만의 간단한 메모 앱, 게임, 이미지 뷰어까지 만들어볼 수 있어요!
'Python' 카테고리의 다른 글
| Matplotlib_Cheat_ (0) | 2025.05.25 |
|---|---|
| Pandas_Cheat_ (0) | 2025.05.25 |
| Python.데이터 수집 (0) | 2025.05.25 |
| Python.DB 활용 (0) | 2025.05.25 |
| Python.기초 (0) | 2025.05.25 |