QCalendarWidget是PyQt5中的一个控件,用于显示和选择日期。当用户单击QCalendarWidget上的年份时,可以通过连接信号和槽来执行相应的操作。
以下是一个完整的示例代码,演示了如何在单击QCalendarWidget上的年份时触发事件:
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QCalendarWidget
from PyQt5.QtCore import QDate
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle("Calendar Widget Example")
self.calendar = QCalendarWidget(self)
self.calendar.setGridVisible(True)
self.calendar.clicked.connect(self.on_calendar_clicked)
self.setCentralWidget(self.calendar)
def on_calendar_clicked(self, date):
if date.isValid():
print("Year clicked:", date.year())
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
在这个示例中,我们创建了一个MainWindow类,继承自QMainWindow。在构造函数中,我们创建了一个QCalendarWidget,并将其设置为窗口的中心部件。我们还将clicked信号连接到了on_calendar_clicked槽函数上。
在on_calendar_clicked函数中,我们检查所选日期是否有效,如果有效,则打印所选年份。
领取专属 10元无门槛券
手把手带您无忧上云