일상,생활정보

파이썬 코드 이용하여 windows PC용 타이머 프로그램 만들기

㈜따봉이 2025. 2. 16. 16:49
반응형

 

 

PC용 타이머 프로그램 만들기 (Python GUI)

이번 포스팅에서는 Python을 사용하여 PC용 타이머 프로그램을 만드는 방법을 소개합니다. 초보자도 쉽게 따라할 수 있도록 단계별로 코드와 실행 방법을 설명할 예정입니다.

이 타이머 프로그램은 다음과 같은 기능을 갖추고 있습니다:

  • 시간, 분, 초를 설정할 수 있는 입력 기능 (콤보박스 사용)
  • 시작, 중지, 재시작 버튼으로 타이머 조작
  • 남은 시간 표시 (00:00:00 형태)
  • 배경 이미지 설정 가능 (선택 사항)

📌 1. Python 설치하기

Python이 설치되어 있지 않다면 공식 사이트에서 다운로드하여 설치합니다.
설치 후 명령 프롬프트(cmd) 또는 터미널에서 아래 명령어를 입력해 Python이 정상적으로 설치되었는지 확인하세요.

 

📌 2. 필요한 라이브러리 설치

이 프로그램에서는 Pillow 라이브러리를 사용하여 배경 이미지를 표시합니다. 아래 명령어를 입력하여 설치하세요.

타이머 프로그램에 배경화면을 넣고 싶다면 설치된 파이썬 프로그램을 실행 후 아래의 명령어를 입력해주세요
 
pip install pillow

📌 3. 타이머 프로그램 코드 (Python)

메모장을 열고 아래 코드를 복사하여 .py 파일로 저장하세요. 예를 들어 **timer.py**로 저장하면 됩니다.

python
복사편집
import time import tkinter as tk from tkinter import messagebox, ttk from PIL import Image, ImageTk # 글로벌 변수 timer_running = False time_left = 0 def start_timer(): """타이머 시작""" global timer_running, time_left if timer_running: return # 이미 실행 중이면 중복 실행 방지 try: hours = int(hour_combobox.get()) minutes = int(minute_combobox.get()) seconds = int(second_combobox.get()) time_left = hours * 3600 + minutes * 60 + seconds # 초 단위 변환 timer_running = True update_timer() except ValueError: messagebox.showerror("오류", "올바른 값을 선택하세요.") def update_timer(): """타이머 업데이트 (1초마다 실행)""" global time_left, timer_running if time_left >= 0 and timer_running: h = time_left // 3600 m = (time_left % 3600) // 60 s = time_left % 60 label.config(text=f"남은 시간: {h:02d}:{m:02d}:{s:02d}") root.update() time_left -= 1 root.after(1000, update_timer) elif time_left < 0: timer_running = False label.config(text="시간 종료!") messagebox.showinfo("알림", "타이머 종료!") def stop_timer(): """타이머 중지""" global timer_running timer_running = False def restart_timer(): """타이머 재시작""" global timer_running if not timer_running and time_left > 0: timer_running = True update_timer() # GUI 설정 root = tk.Tk() root.title("타이머 프로그램") root.geometry("400x300") # 창 크기 조정 # 배경 이미지 추가 try: bg_image = Image.open("background.jpg") bg_image = bg_image.resize((400, 300), Image.LANCZOS) bg_photo = ImageTk.PhotoImage(bg_image) canvas = tk.Canvas(root, width=400, height=300) canvas.pack(fill="both", expand=True) canvas.create_image(0, 0, anchor="nw", image=bg_photo) except FileNotFoundError: print("배경 이미지(background.jpg)가 없습니다.") # UI 요소 추가 label = tk.Label(root, text="시간을 선택하세요", bg="white", font=("Arial", 12)) label.pack(pady=10) # Combobox (시, 분, 초 선택) frame = tk.Frame(root) frame.pack(pady=5) hour_combobox = ttk.Combobox(frame, values=[str(i) for i in range(24)], width=5) hour_combobox.set("0") # 기본값 설정 hour_combobox.pack(side="left") tk.Label(frame, text="시간").pack(side="left") minute_combobox = ttk.Combobox(frame, values=[str(i) for i in range(60)], width=5) minute_combobox.set("0") minute_combobox.pack(side="left") tk.Label(frame, text="분").pack(side="left") second_combobox = ttk.Combobox(frame, values=[str(i) for i in range(60)], width=5) second_combobox.set("0") second_combobox.pack(side="left") tk.Label(frame, text="초").pack(side="left") # 버튼 추가 (한 줄 배치) button_frame = tk.Frame(root) button_frame.pack(pady=10) start_button = tk.Button(button_frame, text="시작", command=start_timer) start_button.pack(side="left", padx=5) stop_button = tk.Button(button_frame, text="중지", command=stop_timer) stop_button.pack(side="left", padx=5) restart_button = tk.Button(button_frame, text="재시작", command=restart_timer) restart_button.pack(side="left", padx=5) root.mainloop()

📌 4. 실행 방법

1️⃣ 코드 저장

  • 위 코드를 메모장에서 저장 - 다른이름으로 저장 - timer.py로 저장합니다.

2️⃣ 배경 이미지 추가 (선택 사항)

  • 원하는 배경 이미지를 **background.jpg**로 저장하고, timer.py와 같은 폴더에 둡니다.

3️⃣ 프로그램 실행하기

  • Windows에서는 명령 프롬프트(cmd), Mac과 Linux에서는 터미널을 엽니다.
  • timer.py가 있는 폴더로 이동합니다.
폴더로 이동하였으면 주소표시줄을 누르고 cmd를 누르고 엔터를 눌러줍니다. 
cmd 창이 열리면 python timer.py를 입력하고 엔터를 눌러주면 됩니다. 

📌 5. 주요 기능

시, 분, 초를 선택하여 타이머 설정
배경 이미지 추가 가능 (background.jpg 파일 필요)
시작 버튼을 누르면 타이머가 작동
중지 버튼을 누르면 타이머가 멈춤
재시작 버튼을 누르면 멈춘 시간부터 다시 시작


📌 6. EXE 파일로 변환 (선택 사항)

이 프로그램을 .exe 파일로 변환하여 매번 Python을 실행하지 않고 바로 실행 가능하게 만들 수 있습니다.

cmd창이 열리면 python timer.py를 입력하는 대신 ,
 
pip install pyinstaller pyinstaller --onefile --windowed timer.py를 입력하여 줍니다. 

변환이 완료되면 dist 폴더 안에 timer.exe가 생성됩니다. 이를 실행하면 타이머 프로그램이 실행됩니다.


📌 7. 마무리

이제 Python GUI 타이머 프로그램을 직접 만들어보고 실행할 수 있습니다!
필요한 기능을 추가해서 알람, 사운드 기능, 다중 타이머 등으로 확장해 보세요.

궁금한 점이나 추가 기능 요청이 있다면 댓글로 남겨주세요! 😊

반응형