📜  PyQt5 QDateEdit – 获取时间(1)

📅  最后修改于: 2023-12-03 15:33:53.012000             🧑  作者: Mango

PyQt5 QDateEdit – 获取时间

在 PyQt5 中,PyQt5.QDateEdit 类允许用户通过编辑器选择日期。在这个教程中,我们将学习如何使用 PyQt5 中的 QDateEdit 获取用户选择的日期和时间。

代码实现

我们将首先创建一个 PyQt5 应用程序窗口,并在窗口中添加 QDateEdit 控件。然后,我们将使用 PyQt5 中的 QDateEdit.date() 方法来获取用户选择的日期。

from PyQt5 import QtCore, QtGui, QtWidgets
import sys


class MyWindow(QtWidgets.QMainWindow):
    def __init__(self):
        QtWidgets.QMainWindow.__init__(self)
        self.setWindowTitle('PyQt5 QDateEdit – 获取时间')

        # 添加 QDateEdit 控件
        self.dateedit = QtWidgets.QDateEdit(self)
        self.dateedit.setDateTime(QtCore.QDateTime.currentDateTime())
        self.dateedit.setCalendarPopup(True)
        self.dateedit.setGeometry(50, 50, 200, 30)
        self.dateedit.dateChanged.connect(self.get_date_time)

    def get_date_time(self):
        # 获取 QDateEdit 控件中选择的时间
        date_time = self.dateedit.date()
        print(date_time.toString())

app = QtWidgets.QApplication(sys.argv)
window = MyWindow()
window.show()
sys.exit(app.exec_())

在上面的代码中,我们首先创建一个 PyQt5 应用程序窗口,然后添加了一个 QDateEdit 控件。通过将 dateChanged 信号连接到 get_date_time 函数,我们可以在用户选择新时间时获取相应的日期时间对象。

在 get_date_time 函数中,我们通过使用 QDateEdit.date() 方法获取用户选择的日期时间对象。然后,我们调用 QDate.toString() 方法来将此日期时间对象转换为字符串并将其打印到控制台上。

运行程序

在上面的代码中,我们的 PyQt5 应用程序窗口上看起来像这样:

QDateEdit app window

现在,当我们选择一个新的日期,它将立即打印到控制台上。

Tue Aug 31 00:00:00 2021
结论

在本节中,我们看到了如何使用 PyQt5 中的 QDateEdit 控件来获取用户输入的日期。我们使用 QDateEdit.date() 方法来获取用户选择的日期时间对象,并使用 QDate.toString() 方法将此对象转换为字符串,以将其打印到控制台上。