首页 python python qt 日期范围demo

python qt 日期范围demo

python qt 日期范围demo 开始选日期,结束选日期 import sys from PyQt5.QtWidge…

python qt 日期范围demo

开始选日期,结束选日期

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QPushButton, QCalendarWidget, QLabel, QDialog
from PyQt5.QtCore import Qt, QDate

class DateRangeWidget(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        layout = QVBoxLayout()

        self.start_date_label = QLabel("Start Date: ")
        self.end_date_label = QLabel("End Date: ")

        self.start_date_button = QPushButton("Select Start Date")
        self.end_date_button = QPushButton("Select End Date")

        layout.addWidget(self.start_date_label)
        layout.addWidget(self.start_date_button)
        layout.addWidget(self.end_date_label)
        layout.addWidget(self.end_date_button)

        self.start_date_button.clicked.connect(lambda: self.showCalendar(self.updateStartDate))
        self.end_date_button.clicked.connect(lambda: self.showCalendar(self.updateEndDate))

        self.setLayout(layout)
        self.setWindowTitle("Date Range Selector")

    def showCalendar(self, update_function):
        dialog = QDialog()
        calendar = QCalendarWidget()
        calendar.setGridVisible(True)
        calendar.setVerticalHeaderFormat(QCalendarWidget.NoVerticalHeader)
        calendar.clicked.connect(lambda: self.updateAndClose(update_function, calendar.selectedDate(), dialog))
        dialog.layout = QVBoxLayout()
        dialog.layout.addWidget(calendar)
        dialog.setLayout(dialog.layout)
        dialog.exec_()

    def updateAndClose(self, update_function, date, dialog):
        update_function(date)
        dialog.close()

    def updateStartDate(self, date):
        self.start_date_label.setText(f"Start Date: {date.toString(Qt.ISODate)}")

    def updateEndDate(self, date):
        self.end_date_label.setText(f"End Date: {date.toString(Qt.ISODate)}")

if __name__ == '__main__':
    app = QApplication(sys.argv)
    date_range_widget = DateRangeWidget()
    date_range_widget.show()
    sys.exit(app.exec_())
免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

为您推荐

python  qt表格新增样式头样式及隐藏行号

python qt表格新增样式头样式及隐藏行号

# 设置表格样式 self.tableWidget.setStyleSheet(""" QTableWidget { b...
python 时间比较 can’t compare datetime.datetime to datetime.date

python 时间比较 can’t compare datetime.datetime to datetime.date

The error message “can’t compare datetime.dateti...
python  判断是否KeyError: ‘netWorthData’

python 判断是否KeyError: ‘netWorthData’

在 Python 中,要判断一个字典是否包含某个键(key),可以使用 in 关键字或者 dict.get() 方法。如...
python : ‘NoneType’ object has no attribute ‘string’

python : ‘NoneType’ object has no attribute ‘string’

判断是否存在空值 from bs4 import * import requests head = {'user-age...
python  打包exe.txt

python 打包exe.txt

此时我的pip版本可用pip –version或者pip -V查看。 一般的解决方案是: python -m...
返回顶部