PyQT5-QCalendarWidget 日歷顯示


 1 """
 2     QCalendarWidget:提供了日歷插件
 3     Author:dengyexun
 4     DateTime:2018.11.22
 5 """
 6 from PyQt5.QtWidgets import QWidget, QCalendarWidget, QApplication, QLabel, QVBoxLayout
 7 from PyQt5.QtCore import QDate
 8 import sys
 9 
10 class Example(QWidget):
11 
12     def __init__(self):
13         super().__init__()
14 
15         self.initUI()
16 
17     def initUI(self):
18         # 將多個控件加入到qt的布局管理器中。建立一個箱布局
19         vbox = QVBoxLayout(self)
20 
21         # # 日歷對象,網格可見
22         cal = QCalendarWidget(self)
23         cal.setGridVisible(True)
24         # 點擊日歷,傳入QDate數據,同showDate函數相關聯
25         cal.clicked[QDate].connect(self.showDate)
26 
27         # 把日歷加入到這個箱子中
28         vbox.addWidget(cal)
29 
30         # 顯示選定的日期的label
31         self.lbl = QLabel(self)
32         date = cal.selectedDate()
33         self.lbl.setText(date.toString())
34 
35         # 把label也加入到這個箱子中
36         vbox.addWidget(self.lbl)
37 
38         # 要給vbox設置布局
39         self.setLayout(vbox)
40 
41         self.setGeometry(300, 300, 350, 300)
42         self.setWindowTitle('Calendar')
43         self.show()
44 
45     def showDate(self, date):
46         """
47         顯示選中的日期
48         :param date: 點擊日歷組件,接收傳入的參數
49         :return:
50         """
51         self.lbl.setText(date.toString())
52 
53 
54 if __name__ == '__main__':
55     app = QApplication(sys.argv)
56     ex = Example()
57     sys.exit(app.exec_())

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM