📜  使用 tkinter 的日期和时间 - Python (1)

📅  最后修改于: 2023-12-03 14:49:47.243000             🧑  作者: Mango

使用 tkinter 的日期和时间 - Python

当你需要在 Python GUI 应用程序中使用日期和时间时,tkinter 是一个非常有用的工具库。在本文中,我们将了解如何在应用程序中使用 tkinter 并显示日期和时间。

导入 tkinter

首先,我们需要导入 tkinter 库:

import tkinter as tk
from tkinter import ttk
from tkinter import messagebox as mb
创建主窗口

利用 tkinter 创建一个主窗口:

window = tk.Tk()
window.geometry("500x200")
window.title("日期和时间")
创建日期和时间的 Label

在主窗口中,我们需要创建两个 label,一个用于显示日期,另一个用于显示时间。

date_label = ttk.Label(window, text="")
date_label.pack()

time_label = ttk.Label(window, text="")
time_label.pack()
获取日期和时间

我们可以使用 Python 自带的 datetime 库来获取日期和时间:

from datetime import datetime

date = datetime.now().date()
time = datetime.now().time()
更新日期和时间

我们需要实时更新日期和时间,以便显示当前时间和日期。我们可以使用 after() 函数来实现。

def update_time():
    current_time = datetime.now().time().strftime("%H:%M:%S")
    time_label.config(text=current_time)
    time_label.after(1000, update_time)

def update_date():
    current_date = datetime.now().date().strftime("%B %d, %Y")
    date_label.config(text=current_date)
    date_label.after(1000, update_date)

update_time()
update_date()

在上面的代码中,我们定义了两个函数,update_time()update_date(),它们分别更新时间和日期的 Label,然后使用 after() 函数将它们以 1000ms 的时间间隔更新一次。

主循环

最后,我们需要让主窗口保持运行状态,否则所有内容将在窗口闪现后立即消失。

window.mainloop()

完整的代码如下:

import tkinter as tk
from tkinter import ttk
from tkinter import messagebox as mb
from datetime import datetime

window = tk.Tk()
window.geometry("500x200")
window.title("日期和时间")

date_label = ttk.Label(window, text="")
date_label.pack()

time_label = ttk.Label(window, text="")
time_label.pack()

def update_time():
    current_time = datetime.now().time().strftime("%H:%M:%S")
    time_label.config(text=current_time)
    time_label.after(1000, update_time)

def update_date():
    current_date = datetime.now().date().strftime("%B %d, %Y")
    date_label.config(text=current_date)
    date_label.after(1000, update_date)

update_time()
update_date()

window.mainloop()

以上就是在 tkinter 中使用日期和时间的完整代码。你可以将代码复制到你的项目中并使用。