• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

python计时器源码

python 海叔叔 4年前 (2021-12-09) 30次浏览 已收录 0个评论

关键词:python,计时,python计时,计时器,python计时器
来源搞代码网《python计时器源码》http://www.gaodaima.com/68546.html

python计时器源码

import tkinter
import threading
import time
 
# 创建窗口
from1 = tkinter.Tk()
# 窗口标题
from1.title('帅哥哥计时器')
# 窗口大小
from1.minsize(400, 400)
 
isloop = False  # 初始化按钮False为停止 True为开始
var = tkinter.StringVar()
stopid = None  # 定义一个空值
 
'''********* 计时函数 *********'''
def gettime():
    global isloop
    global stopid
    global star
    global fo
 
    elap = time.time() - star  # 获取时间差
 
    if isinstance(stopid, float):
        a = stopid
        elap = elap + a
    minutes = int(elap / 60)  # 分钟
    seconds = int(elap - minutes * 60.0)  # 秒
    hseconds = int((elap - minutes * 60.0 - seconds) * 1000)  # 毫秒
    var.set('%02d:%02d:%03d' % (minutes, seconds, hseconds))
 
    if isloop == False:
        but1['text'] = '继续'
        stopid = elap   # 把暂停时的时间差赋给 stopid (有记忆)
        fo.write('%02d:%02d:%03d' % (minutes, seconds, hseconds) +"\n")  # 记录时间
        fo.close()  # 关闭文件
        return
 
    from1.after(1, gettime)  # 每隔1ms调用函数自身获取时间
 
'''********* 开始\暂停按钮函数 **********'''
def newtask():
    global isloop
    global star
    global fo
    if but1['text'] == '开始' or but1['text'] == '继续':  # 根据按钮的文本来判断是否开启循环
        if but1['text'] == '开始':
            fo = open("record.txt", "w")  # 开始时清楚上一次记录的内容
        else:
            fo = open("record.txt", "a")  # 追加暂停时的时间
        but1['text'] = '暂停'
        isloop = True
        star = time.time()  # 获取当前时间
        # 建立线程
        t = threading.Thread(target=gettime)
        # 开启线程
        t.start()
    else:
        isloop = False
 
'''******* 清零按钮函数 ********'''
def clearing():
    global isloop
    global stopid
    isloop = False  # 初始化按钮为停止
    stopid = None  # 定义一个空值
    var.set('00:00:000')
    but1['text'] = '开始'
 
# 开始\暂停 按钮
but1 = tkinter.Button(from1, text='开始', command=newtask)
but1.place(x=95, y=280, width=80, height=50)  # 按钮位置和大小
# 重置按钮
but2 = tkinter.Button(from1, text='清零', command=clearing)
but2.place(x=225, y=280, width=80, height=50)
# # 显示时间
var.set('00:00:000')  # 初始化时间
lab1 = tkinter.Label(from1, textvariable=var, font=("Arial Bold", 30), foreground="red")
lab1.place(x=110, y=150)
 
# from1.overrideredirect(1) # 隐藏标题栏 最大化最小化按钮
from1.attributes("-toolwindow", 1)  # 去掉窗口最大化最小化按钮,只保留关闭
 
# 显示窗体
from1.mainloop()

搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:python计时器源码
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址