import time
from datetime import datetime
import threading
import winsound # funciona no Windows
INTERVALO_MINUTOS = 15
ronda_ativa = True
def som_alerta():
# bip simples (frequência, duração)
winsound.Beep(1000, 800)
def log_mensagem(texto):
hora = datetime.now().strftime('%H:%M:%S')
label_log.config(text=f"[{hora}] {texto}")
def ciclo_rondas():
global ronda_ativa
while ronda_ativa:
som_alerta()
log_mensagem("Hora de verificar a pessoa!")
time.sleep(INTERVALO_MINUTOS * 60)
def confirmar_ronda():
som_alerta()
log_mensagem("Ronda confirmada ✔")
def iniciar():
thread = threading.Thread(target=ciclo_rondas, daemon=True)
thread.start()
botao_iniciar.config(state="disabled")
log_mensagem("Sistema iniciado")
from tkinter import *
root = Tk()
root.geometry("400x300")
root.resizable(0, 0)
root.config(bg="#103030")
root.title("Sistema de Rondas")
titulo = Label(text="Sistema de Rondas",
font=("Arial", "28", "bold"), bg="#103030", fg="#49e3e3")
titulo.place(relx=0.05, rely=0.05)
label_titulo = Label(text="Sistema de Rondas 15 min", font=("Arial", 14))
label_titulo.place(relx=0.18, rely=0.25)
label_log = Label( text="Aguardando início...", font=("Arial", 11))
label_log.place(relx=0.2, rely=0.38)
botao_iniciar = Button(text="Iniciar rondas", command=iniciar)
botao_iniciar.place(relx=0.4, rely=0.5)
botao_confirmar = Button(text="Confirmar ronda", command=confirmar_ronda)
botao_confirmar.place(relx=0.4, rely=0.67)
root.mainloop()