📜  PyQt5 QCalendarWidget – 显示选定日期(1)

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

PyQt5 QCalendarWidget – 显示选定日期

QCalendarWidget是PyQt5中可用的一个日历小部件,可以帮助用户选择日期。在本教程中,我们将学习如何使用QCalendarWidget来显示选定的日期。

安装

要使用QCalendarWidget,必须首先安装PyQt5库。你可以使用以下命令来安装:

pip install PyQt5
示例代码

以下是一个简单的示例代码,演示了如何在PyQt5中使用QCalendarWidget来显示选定的日期。

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QCalendarWidget, QVBoxLayout, QLabel

class CalendarWidget(QWidget):
    def __init__(self):
        super().__init__()

        # 初始化UI
        self.initUI()

    def initUI(self):
        # 创建QCalendarWidget小部件
        self.calendar = QCalendarWidget(self)

        # 创建一个标签来显示选定的日期
        self.selectedDateLabel = QLabel(self)

        # 将QCalendarWidget的信号绑定到函数
        self.calendar.selectionChanged.connect(self.showSelectedDate)

        # 创建一个垂直盒子来将小部件添加到布局中
        vbox = QVBoxLayout()
        vbox.addWidget(self.calendar)
        vbox.addWidget(self.selectedDateLabel)

        # 将布局设置为窗口的主要布局
        self.setLayout(vbox)

        # 设置应用程序窗口的属性
        self.setGeometry(300, 300, 350, 300)
        self.setWindowTitle('PyQt5 QCalendarWidget – 显示选定日期')
        self.show()

    def showSelectedDate(self):
        # 获取选定的日期
        selectedDate = self.calendar.selectedDate()

        # 将日期格式化为字符串
        selectedDateString = selectedDate.toString("yyyy-MM-dd")

        # 显示选定的日期
        self.selectedDateLabel.setText("选定的日期: " + selectedDateString)


if __name__ == '__main__':
    app = QApplication(sys.argv)
    calendarWidget = CalendarWidget()
    sys.exit(app.exec_())
解释代码
  1. 从PyQt5.QtWidgets导入QApplication,QWidget,QCalendarWidget,QVBoxLayout和QLabel类。
  2. 创建一个名为CalendarWidget的QWidget子类。
  3. 重写CalendarWidget的__init __()方法并调用父类的__init __()方法。
  4. 调用initUI()方法,该方法创建并初始化CalendarWidget的用户界面。
  5. 在initUI()方法中创建一个QCalendarWidget小部件,并将其添加到CalendarWidget窗口中。
  6. 创建一个QLabel小部件来显示选定的日期,并将其添加到CalendarWidget窗口中。
  7. 使用QCalendarWidget的selectionChanged信号将QCalendarWidget的值更改连接到showSelectedDate()函数。
  8. 在showSelectedDate()函数中获取选定的日期,并将其格式化为字符串。
  9. 最后,在showSelectedDate()函数中将选定的日期显示在QLabel小部件中。
  10. 在main函数中创建一个应用程序对象和一个CalendarWidget对象,并运行应用程序。
结论

在本教程中,我们学习了如何使用PyQt5中的QCalendarWidget小部件来显示选定的日期。可以使用此小部件来选择日期并在应用程序中使用选定的日期。