如何python和Tkinter制作时钟,程序代码是什么
Admin 2022-09-06 群英技术资讯 711 次浏览
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二叉树类以及其4种遍历方法的相关资料,需要的朋友可以参考下
这篇文章主要介绍了十个Python自动化常用操作,即拿即用,文中有非常详细的代码示例,对正在学习python的小伙伴们有很好的帮助哟,需要的朋友可以参考下
这篇文章主要介绍了Python3 中return和yield的区别,return和yield都用来返回值;在一次性地返回所有值场景中return和yield的作用是一样的,但是具体有什么区别呢,带着疑问一起进入下面文章学习详细内容吧
使用pyplot的 bar)函数可以快速绘制柱形图或堆积柱形图。bar)函数的语法格式如下所示
今天教大家怎么实现Tkinter透明窗体,在上篇文章给大家介绍过透明窗体上绘制小球,今天接着通过实例代码给大家分享python使用tkinter实现透明窗体上绘制随机出现的小球的实例代码,感兴趣的朋友跟随小编一起看看吧
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008