闹钟Python

2024-06-01 00:34:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试用Python制作闹钟,但是我在比较当前时间和所需的闹钟时间时遇到了一个问题,闹钟只是以If条件开始,with!=虽然==。
我的代码是:

def relogio(): #função relogio
    horario.config(text = strftime("%H:%M"))
    horario.after(1000,relogio) #atualiza o horario a cada 1 segundo
    return

def ligAlarme(hora,minuto): #função alarme
   
    print(localtime().tm_hour)
    
    while True:
        
        if  localtime().tm_hour == int(hora) and localtime().tm_min == int(minuto):
            
            pygame.mixer.init() #chama o iniciador da música
            pygame.mixer.music.load("alarm-clock-ringing.mp3")
            pygame.mixer.music.play(loops = 2)
            botaoParar.place(x=325, y=210)
            
            break
         
        return
def deslAlarme(): #função para desligar o alarme
    pygame.mixer.music.stop()
    return
janela = tk.Tk()
janela.title("Despertador relógio")
janela.geometry("500x250")
janela.resizable(0,0) 
janela.config(bg = "white") 

horario = tk.Label(janela, bg = "white", fg = "black", font = "arial 50 bold") 
horario.pack() 
relogio()

hora = tk.Entry(janela, width = 2, bg = "white", fg = "black", font = "arial 25" ) 
hora.place(x=195,y=155)

minuto = tk.Entry(janela, width = 2, bg = "white", fg = "black", font = "arial 25" ) 
minuto.place(x=255,y=155)

botaoIniciar = tk.Button(janela, text = "Iniciar alarme", command = lambda: ligAlarme(hora.get(), minuto.get())) 
botaoIniciar.place(x=100,y=210)

botaoParar = tk.Button(janela, text = "Parar alarme", command = deslAlarme)

janela.mainloop()

谢谢你的帮助


Tags: defplacepygametkbgwhitefun闹钟