如何python和Tkinter制作时钟,程序代码是什么
Admin 2022-09-06 群英技术资讯 1489 次浏览
这篇文章主要介绍“如何python和Tkinter制作时钟,程序代码是什么”,有一些人在如何python和Tkinter制作时钟,程序代码是什么的问题上存在疑惑,接下来小编就给大家来介绍一下相关的内容,希望对大家解答有帮助,有这个方面学习需要的朋友就继续往下看吧。Tkinter 实现上述功能并不复杂,只要使用 Tkinter 的相关组件和一些简单的逻辑处理即可,在编写这个案例的过程中大家要做到温故而知新。
程序代码如下所示:
from tkinter import *
from time import strftime
root = Tk()
root.geometry('500x350+300+300')
root.iconbitmap('C:/Users/Administrator/Desktop/C语言中文网logo.ico')
root.title("C语言中文网出品")
# 设置文本标签
lb = Label(root, font=("微软雅黑", 50, "bold"), bg='#87CEEB', fg="#B452CD")
lb.pack(anchor="center", fill="both", expand=1)
# 定义一个mode标志
mode = 'time'
# 定义显示时间的函数
def showtime():
if mode == 'time':
#时间格式化处理
string = strftime("%H:%M:%S %p")
else:
string = strftime("%Y-%m-%d")
lb.config(text=string)
# 每隔 1秒钟执行time函数
lb.after(1000, showtime)
# 定义鼠标处理事件,点击时间切换为日期样式显示
def mouseClick(event):
global mode
if mode == 'time':
# 点击切换mode样式为日期样式
mode = 'date'
else:
mode = 'time'
lb.bind("<Button>", mouseClick)
# 调用showtime()函数
showtime()
# 显示窗口
mainloop()
程序运行结果如下:

图1:简单的数字时钟
通过上述代码就实现了一个简单的数字时钟,是不是非常的简单。
补充
除了数字时钟,Tkinter还能绘制一个简易的钟表
具体实现代码如下:
# coding:utf-8 from tkinter import * import math,time def points(): for i in range(1,13): x = 200 + 130*math.sin(2*math.pi*i/12) y = 200 - 130*math.cos(2*math.pi*i/12) canvas.create_text(x,y,text=i) def createline(radius,line_width,rad): global List global i List = [] x = 200+radius*math.sin(rad) y = 200-radius*math.cos(rad) i=canvas.create_line(200,200,x,y,width=line_width) List.append(i) root = Tk() root.resizable(0,0) canvas = Canvas(root,width=400,height=500,bd=0,highlightthickness=0) canvas.pack() canvas.create_oval(50,50,350,350) points() while 1: tm=time.localtime() t=time.asctime(tm) t_hour=0 if tm.tm_hour<=12: t_hour=tm_hour else: t_hour=tm.tm_hour-12 rad1=2*math.pi*(t_hour+tm.tm_min/60)/12 rad2=2*math.pi*(tm.tm_min+tm.tm_sec/60)/60 rad3=2*math.pi*tm.tm_sec/60 createline(50,6,rad1,) createline(90,3,rad2) createline(120,1,rad3) l=canvas.create_text(170,450,text=t) root.update() time.sleep(1) for item in List: canvas.delete(item) canvas.delete(l) root.update() mainloop()
效果如下

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
Python中的数据类型有:数字类型,元组类型,布尔类型,集合类型,列表类型,字典类型,字符串类型;其中,列表类型,字典类型,字符串类型 比较复杂。这篇我们先来看数字类型,元组类型,布尔类型,集合类型这几种
本文主要给大家介绍的是关于python中scapy模块发包和收包的操作。我们日常上网时,会有很多数据包需要发送,然后处理在接受在发送,如此反复。其中scapy在发包收包起重要作用,下面我们一起来了解一下。
签到,都是规律性的操作,何尝不写一个程序加到Windows实现自动签到呢,本文就主要介绍了如何利用Python实现自动打卡签到的实践,具有一定的参考价值,感兴趣的可以了解一下
python模块是什么?使用模块有哪些好处?模块的用法是什么?这些问题都是Python新手比较好奇的问题,为了让大家更好的理解python模块,下面小编就给大家具体介绍一下python模块的相关概念和使用等等。
这篇文章主要介绍了如何利用Python+OpenCV实现特定场景去除高光算法,文中的示例代码讲解详细,对我们学习Python有一定的帮助,需要的可以参考一下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008