在python之中可以通过Tkinter模块以及turtle模块来实现很多图像的绘制以及动态图像的制作,而最近有些小伙伴就想要知道python是如何做数码时钟的,本篇文章要来给大家介绍的内容就是python用Tkinter模块实现数码时钟制作详解 。
文章插图
1.那么首先的话就是需要去导入Tkinter模块以及time模块,这两个模块的作用分别为创建窗口并生成组件,以及获取时间和处理时间差,示例如下:
from tkinter import *from time import strftime2.导入模块之后的第二步就是要去创建窗口并设置窗口尺寸了,因为数码时钟不需要太大的窗口去显示,所以窗口大小设置一个比较平均的值就可以了 。窗口生成之后还可以去设置一下小图标和标题,小图标需要用到icon格式,代码如下:
root = Tk()root.geometry('500x350+300+300')root.iconbitmap(' logo.ico')root.title("数码时钟")3.在有了窗口基础之后就要去创建组件来显示时间了,这里只要使用文本组件Label即可 。设置完成后将其给添加到窗口中间,然后还需要定义一个标签来切换时间和日期,示例如下:
lb = Label(root, font=("微软雅黑", 50, "bold"), bg='#87CEEB', fg="#B452CD")lb.pack(anchor="center", fill="both", expand=1)mode = 'time'4.那么第四步就是要去编写一个显示获取当前时间和日期的函数了,然后通过在这个函数之中使用文字标签每隔1秒就重新调用这个函数,这样就能够实现时间每秒增加的效果,示例如下所示:
def showtime(): if mode == 'time': string = strftime("%H:%M:%S %p") else: string = strftime("%Y-%m-%d") lb.config(text=string)lb.after(1000, showtime)5.在当前的窗口上默认显示的只有时分秒的时间而没有年月日的日期,在之前定义了一个切换时间日期的标签 。那么只需要用到文字组件的点击时间即可,示例如下:
def mouseClick(event): global mode if mode == 'time': mode = 'date' else: mode = 'time'lb.bind("<Button>", mouseClick)【Python如何绘制数字时钟?Python怎么做数码时钟】最后要先调用获取时间的函数,然后用mainloop()方法开启窗体循环即可动态的显示数码时钟了 。
推荐阅读
- python如何绘制柱状图?python如何通过matplotlib绘制柱状图?
- python中pandas的panel结构是什么?什么是pandas中的panel结构?
- python中pandas如何检测缺失值?python中pandas怎样检测缺失值?
- Python如何实现词频统计?Python统计词语出现频率怎么写
- python如何访问pandas中series数据?python访问series数据的方法
- Python列表如何反转?Python反转列表的方法有哪些
- 汽修行业如何做营销 修理厂如何引流与推广
- 淘宝开店后如何运营?要注意什么问题?
- 淘宝拉黑店铺怎么拉?如何投诉淘宝店铺?
- 淘宝详情页可以留电话吗?如何做好?