如何使用tkinter构建数字时钟

大学计算机基础

共 1065字,需浏览 3分钟

 · 2021-09-06


用tkinter创建一个数字时钟,最终效果图如下

点击界面时,切换到日期,还可以再切换回来

看起来挺有趣的,开始code吧

首先创建出窗口

from tkinter import *from time import strftime
root = Tk()root.title("python时钟")

在窗口上安放一个Lable控件,控件的背景色是黑色,字体为白色,填充整个窗口

# 界面有多大,完全是靠字体撑起来的, 背景是黑色, 字体是白色lbl = Label(root, font=("arial", 100, "bold"), \bg="black", fg="white")lbl.pack(anchor="center", fill="both", expand=1)

接下来,需要考虑如何让时间动起来,Label有一个after方法,可以指定在一定时间后,执行某个函数,可以在这个函数里修改Label上显示的内容。

还要考虑点击Label之后,从显示小时转变为显示日期,因此需要给Label绑定一个click事件

mode = 'hour'
def showtime(): if mode == 'hour': string = strftime("%H:%M:%S %p") else: string = strftime("%Y-%m-%d")
  lbl.config(text=string)   lbl.after(1000, showtime)       # 1秒钟以后执行time函数

def mouse_click(event): global mode if mode == 'hour': mode = 'day' else: mode = 'hour'

lbl.bind("<Button>", mouse_click)showtime()
mainloop()

在mouse_click函数里,改变mode的值,showtime函数根据mode的值来决定

显示什么内容,大功告成啦。


浏览 13
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报