如何用python制作交互式简单手表?
我对如何用python创建手表有点困惑 我编写了以下代码:如何用python制作交互式简单手表?,python,tkinter,Python,Tkinter,我对如何用python创建手表有点困惑 我编写了以下代码: from Tkinter import * root = Tk() tt='vv' def time(tt): from time import strftime tt=strftime('%H:%M:%S') return tt Label= Label(root,bd=11,text=time(tt)) Label.pack() root.mainloop() 我如何让它互动?现在它只显示运行程序时
from Tkinter import *
root = Tk()
tt='vv'
def time(tt):
from time import strftime
tt=strftime('%H:%M:%S')
return tt
Label= Label(root,bd=11,text=time(tt))
Label.pack()
root.mainloop()
我如何让它互动?现在它只显示运行程序时的时间您可以使用
after
函数来安排方法调用
这里有一个小例子。请注意,我使用的是一个可轻松设置标签
的文本
from Tkinter import *
from time import strftime
root = Tk()
time_var = StringVar()
def set_time():
time_var.set(strftime('%H:%M:%S'))
root.after(1000, set_time)
Label(root, bd=11, textvariable=time_var).pack()
set_time()
root.mainloop()
我调用
set\u time
一次,然后set\u time
将自己安排为每1000毫秒调用一次。您可以使用after
函数来安排方法调用
这里有一个小例子。请注意,我使用的是一个可轻松设置标签
的文本
from Tkinter import *
from time import strftime
root = Tk()
time_var = StringVar()
def set_time():
time_var.set(strftime('%H:%M:%S'))
root.after(1000, set_time)
Label(root, bd=11, textvariable=time_var).pack()
set_time()
root.mainloop()
我调用
set_time
一次,然后set_time
将自己安排为每1000毫秒调用一次。after函数在哪里找到的?)我在文档中找不到它(在(delay_ms,callback=None,*args)[#]注册一个在给定时间后调用的报警回调。哦,我找到了)此方法注册一个回调函数,该函数将在给定的毫秒数后调用。Tkinter仅保证不会在此之前调用回调;如果系统忙,实际延迟可能会更长。您可以通过在取消后调用来停止对的单独呼叫after
返回一个ID,您可以在取消后将其传递到。要完全停止更新,只需停止调用root.after(…)
在set\u time
中(只需添加一些条件,如标志或其他内容)。是,我确实读过,但那是一堵墙:)我把我的影响放在下面)你的方法recc
创建一个新的局部变量akt\u var
,并隐藏全局变量akt\u var
。您可以通过将global akt_var
作为recc
函数的第一行来解决这个问题,告诉python您想要使用globalakt_var
而不是创建一个新的本地变量。Put please in future提出一个新问题,而不是将后续问题作为注释或答案发布。你在哪里找到after函数?)我在文档中找不到它(after(delay_ms,callback=None,*args)[#]注册一个在给定时间后调用的报警回调。哦,我找到了)此方法注册一个回调函数,该函数将在给定的毫秒数后调用。Tkinter仅保证不会在此之前调用回调;如果系统忙,实际延迟可能会更长。您可以通过在取消后调用来停止对的单独呼叫after
返回一个ID,您可以在取消后将其传递到。要完全停止更新,只需停止调用root.after(…)
在set\u time
中(只需添加一些条件,如标志或其他内容)。是,我确实读过,但那是一堵墙:)我把我的影响放在下面)你的方法recc
创建一个新的局部变量akt\u var
,并隐藏全局变量akt\u var
。您可以通过将global akt_var
作为recc
函数的第一行来解决这个问题,告诉python您想要使用globalakt_var
而不是创建一个新的本地变量。请在将来提出一个新问题,而不是将后续问题作为评论或答案发布。因此,所谓“交互”并不意味着您希望用户与它交互,但您希望大约每秒更新一次时钟,对吗?因此,所谓“交互”并不意味着您希望用户与它交互,但是你想每秒更新一次时钟,对吗?