tkinter:在 windows 中显示时间

tkinter: display time in a windows

我开始使用 python 中的 GUI 和 tkinter,我想在 windows 的中心显示当前时间 HH:MM:SS(如果可能,使用大数字)。这是应用程序代码:带有背景图片的基本全屏 windows。

import Tkinter as tk
from Tkinter import Tk, Frame, BOTH
import Tkinter
from PIL import Image, ImageTk
root = tk.Tk()
root.attributes('-fullscreen', 1)
im = Image.open('spring.png')
tkimage = ImageTk.PhotoImage(im)
myvar=Tkinter.Label(root,image = tkimage)
myvar.place(x=0, y=0, relwidth=1, relheight=1)
root.mainloop()

编辑:到当前时间我的意思是不断更新时间作为时钟。

向您的 myvar 对象添加一个 compound 参数,值为 Tkinter.CENTER 以及一个带有时间字符串的 text 参数。 要创建时间字符串,请添加

import time
time_string = time.strftime('%H:%M:%S')

现在你的 myvar 看起来像

myvar=Tkinter.Label(root,image = tkimage, text = time_string, compound = Tkinter.CENTER)

进一步参考见:python 时间:https://docs.python.org/2/library/time.html#time.strftime

python tkinter 标签:http://effbot.org/tkinterbook/label.htm

使用地点时可以使用相对坐标。要将一个小部件放在另一个小部件的中心,请使用 relxrelx。您可以使用 in_ 参数告诉它相对于哪个小部件;默认情况下,它将以其父项为中心。

例如:

time = tk.Label(...)
time.place(in_=myvar, relx=.5, rely=.5)

已在 Whosebug 上多次询问是否更新时钟。这是一个示例:How to create a timer using tkinter?