python geometry参数_简单的python制作带GUI的闹钟

构建闹钟项目

我们项目的目标是使用Python实现闹钟。Python由一些非常创新的库(例如datetime和tkinter)组成,这些库可以帮助我们使用当前日期和时间来构建项目,并提供一个用户界面来根据要求以24小时格式设置警报。

该项目需要Python和GUI(图形用户界面)方面的丰富知识。将Python与Tkinter结合使用时,可以轻松快速地创建GUI应用程序。Tkinter为Tk GUI工具包提供了强大的面向对象的界面。不需要像其他库(如NumPy)一样预先下载所有使用的模块,并且可以在用于python编程的任何虚拟环境中访问。

项目文件结构

首先,让我们检查一下在Python中构建闹钟程序的步骤:

  • 导入所需的所有库和模块
  • 提出了一个使用时间作为参数的while循环,用户希望打开闹钟并在时间到时自动中断并发出声音
  • 创建一个用于用户输入的显示窗口。

一、我们导入所有必需的库

from tkinter import *import datetimeimport timeimport winsound
  • Tkinter属于Python中GUI的标准库。它有助于我们创建一个对话框,其中包含我们要提供或从用户那里获得的任何信息。
  • Datetimetime可帮助我们在用户操作时处理当时的日期和时间,并对其进行操作。
  • Winsound提供对Windows平台提供的基本声音播放机制的访问。这在调用函数时立即产生声音很有用。

二、创建一个while循环

def alarm(set_alarm_timer):    while True:        time.sleep(1)        current_time = datetime.datetime.now()        now = current_time.strftime("%H:%M:%S")        date = current_time.strftime("%d/%m/%Y")        print("The Set Date is:",date)        print(now)        if now == set_alarm_timer:            print("Time to Wake up")            winsound.PlaySound("sound.wav",winsound.SND_ASYNC)            breakdef actual_time():    set_alarm_timer = f"{hour.get()}:{min.get()}:{sec.get()}"    alarm(set_alarm_timer)
  • 定义一个名为alarm()的函数,该函数接受(set_alarm_timer)作为参数。它包含一个while循环和一个布尔函数True,使程序自动运行。
  • time.sleep(1)停止执行所给出的其他命令,直到稍后在代码中从用户那里获得时间值,并以固定间隔返回时钟时间的后台线程。
  • 使用current_time获取当前时间,该时间采用datetime.datetime.now()的参数。
  • 现在用于输出时间,日期用于通过使用strftime()进行字符串转换来输出当前日期。
  • 在此处定义另一个函数actual_time(),该函数采用用户值以字符串格式设置警报。(set_alarm_timer)的参数与Alarm相同,以执行while循环,我们将在制作GUI时进一步使用该循环。
  • 如果循环表明用户输入的时间set_alarm_timer与while循环正在进行的时间匹配,则该消息将显示为“Time to Wake up”。
  • 只要条件满足,winsound.SND_ASYNC就会播放系统生成的声音,闹钟就会发出提醒用户的声音。

三、使用tkinter创建GUI

clock = Tk()clock.title("Alarm Clock")clock.geometry("400x200")time_format=Label(clock, text= "Enter time in 24 hour format!", fg="red",bg="black",font="Arial").place(x=60,y=120)addTime = Label(clock,text = "Hour  Min   Sec",font=60).place(x = 110)setYourAlarm = Label(clock,text = "When to wake you up",fg="blue",relief = "solid",font=("Helevetica",7,"bold")).place(x=0, y=29)# The Variables we require to set the alarm(initialization):hour = StringVar()min = StringVar()sec = StringVar()#Time required to set the alarm clock:hourTime= Entry(clock,textvariable = hour,bg = "pink",width = 15).place(x=110,y=30)minTime= Entry(clock,textvariable = min,bg = "pink",width = 15).place(x=150,y=30)secTime = Entry(clock,textvariable = sec,bg = "pink",width = 15).place(x=200,y=30)#To take the time input by user:submit = Button(clock,text = "Set Alarm",fg="red",width = 10,command = actual_time).place(x =110,y=70)clock.mainloop()#Execution of the window.
  • 为了初始化tkinter,我们将名为Clock的命令传递为Tk()
  • 该对话框的标题为400 * 200的Alarm Clock。我们使用time_format传递标题以提及24小时的时间格式。
  • 第二个标题在用户输入框上方给出,使用addTime的标签为“ Hour Min Sec” 。
  • 只是为了使对话框看起来更新颖,使用setYourAlarm添加另一个标签为“When to wake you up” 。
  • 由于我们已经在字符串之前(实际时间)转换了当前时间,因此我们为用户输入对话框初始化的变量在StringVar()中
  • 最后,输入诸如hourTimeminTimesecTime之类的输入框,以输入用户想要以24小时格式设置闹钟的时间。
  • 提交使用已定义函数actual_time的命令并执行时钟,因为它充当启动程序的设置按钮。
  • Clock.mainloop()是基本的,给出的最后一个命令是使用颜色,字体,宽度,轴等的基本设置来编译所有先前的命令,并在程序运行时立即显示窗口。
python Alarm-Clock.py
dd8055653362666b73288197a4822fc6.png
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值