📅  最后修改于: 2023-12-03 14:45:47.560000             🧑  作者: Mango
在PyQt5中,我们可以使用 QCalendarWidget 控件来显示和选择日期。 但是,在某些情况下,我们需要获取所选日期的标题,例如,在一个日历应用程序中,需要获取用户选择日期的标题。
要获取 QCalendarWidget 中所选日期的标题,可以使用 selectedDate()
方法,并使用 toString()
方法将其转换为字符串格式。
下面是一个使用 QCalendarWidget
控件并显示所选日期标题的示例代码:
from PyQt5.QtWidgets import QApplication, QWidget, QCalendarWidget, QVBoxLayout
from PyQt5.QtCore import QDate
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
vbox = QVBoxLayout()
cal = QCalendarWidget(self)
cal.clicked[QDate].connect(self.showDate)
vbox.addWidget(cal)
self.lbl = QLabel(self)
date = cal.selectedDate()
self.lbl.setText(date.toString())
vbox.addWidget(self.lbl)
self.setLayout(vbox)
self.setGeometry(300, 300, 350, 300)
self.setWindowTitle('QCalendarWidget – 获取标题')
self.show()
def showDate(self, date):
self.lbl.setText(date.toString())
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
在上面的代码中,我们创建了一个应用程序窗口,将 QCalendarWidget
控件添加到窗口中,并为其添加了 showDate()
方法。该方法使用 setText()
方法将所选日期的标题设置为标签的文本。
在 QCalendarWidget
控件中单击日期时,会将所选日期传递给 showDate()
方法中。然后,该方法将日期的标题设置为标签的文本,并将其更新到界面上。
感谢您的阅读!