📌  相关文章
📜  PyQt5 QCalendarWidget – 获取一周的第一天(1)

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

PyQt5 QCalendarWidget – 获取一周的第一天

在 PyQt5 中,QCalendarWidget 是一个日历小部件,可以用于显示和选择日期。本文将介绍如何使用 QCalendarWidget 获取一周的第一天。

获取一周的第一天

在 QCalendarWidget 中,可以使用 selectedDate() 方法来获取当前选中的日期。然后,通过 QDate 类的 dayOfWeek() 方法可以获取该日期是一周的第几天。

以下是一个获取一周的第一天的示例代码:

from PyQt5.QtWidgets import QApplication, QMainWindow, QCalendarWidget
from PyQt5.QtCore import QDate

class CalendarApp(QMainWindow):
    def __init__(self):
        super().__init__()

        self.setWindowTitle("Calendar App")
        self.setGeometry(100, 100, 400, 300)

        calendar = QCalendarWidget(self)
        calendar.setGeometry(10, 10, 380, 250)

        # 获取当前选中的日期
        selected_date = calendar.selectedDate()

        # 获取一周的第一天
        first_day = selected_date.addDays(1 - selected_date.dayOfWeek())

        print("第一天:", first_day)

if __name__ == '__main__':
    app = QApplication([])
    window = CalendarApp()
    window.show()
    app.exec_()

在上面的代码中,首先创建一个 QCalendarWidget,并获取当前选中日期 selected_date。然后,使用 selected_date.addDays(1 - selected_date.dayOfWeek()) 方法来计算一周的第一天,并将结果打印出来。

运行程序

要运行上述代码,首先需要安装 PyQt5。可以使用以下命令来安装 PyQt5:

pip install PyQt5

将代码保存到一个名为 calendar_app.py 的文件中,然后在终端或命令提示符中运行以下命令来启动应用程序:

python calendar_app.py

接下来,将会显示一个带有日历的窗口。选择一个日期后,该日期的一周第一天将在终端或命令提示符中打印出来。

总结

通过使用 QCalendarWidget 和 QDate 类,可以很方便地获取一周的第一天。希望本文对你有所帮助!