在PyQt中使用QCalendarWidget选择日期范围

时间:2011-11-10 16:05:48

标签: python qt pyqt

我在PyQt中使用QCalendarWidget来查找用户从弹出日历中点击的单个日期。我希望他们能够选择一系列日期 - 例如,11月12日至17日,而不仅仅是12日。

QCalendarWidget docs提及NoSelectionSingleSelection。如何实现多重选择?

以下是我现在的代码:

def selectDates(self):
    self.dateWindow = QWidget()
    self.cal = QCalendarWidget(self)
    self.cal.clicked[QtCore.QDate].connect(self.showDate)
    self.hbox = QHBoxLayout()
    self.hbox.addWidget(self.cal)
    self.dateWindow.setLayout(self.hbox)
    self.dateWindow.setGeometry(300, 300, 350, 300)
    self.dateWindow.setWindowTitle('Calendar')

    self.dateWindow.show()

def showDate(self):
    print "Date picked: ", self.cal.selectedDate()

1 个答案:

答案 0 :(得分:0)

我不认为这是可能的。 我确定你已经考虑过添加两个日历小部件或dateEdit小部件(一个用于范围的第一个日期,一个用于最后一个)。 但除非你认为你可以开发一个覆盖类,否则你应该考虑这种可能性。