PyQt QCalendar小部件

PyQt QCalendar小部件

QCalendar 小部件是一个实用的日期选择控件。它提供基于月份的视图。用户可以通过鼠标或键盘来选择日期,默认为今天的日期。也可以指定日历的日期范围。

以下是该类的一些工具方法:

下面是QCalendar最常用的方法:

序号 方法和描述
1 setDateRange() 设置可选择的日期的下限和上限
2 setFirstDayOfWeek() 确定日历中第一列的日期 预定义的日期常量有 −
Qt.Monday(星期一)
Qt.Tuesday(星期二)
Qt.Wednesday(星期三)
Qt.Thursday(星期四)
Qt.Friday(星期五)
Qt.Saturday(星期六)
Qt.Sunday(星期日)
3 setMinimumDate() 设置可选择的最小日期
4 setMaximumDate() 设置可选择的最大日期
5 setSelectedDate() 设置一个QDate对象作为选定日期
6 showToday() 显示当前日期所在的月份
7 selectedDate() 获取选定的日期
8 setGridvisible() 打开或关闭日历的网格显示

示例

下面的示例包含一个日历小部件和一个标签,用于显示当前选中的日期。完整的代码如下:

import sys
from PyQt4 import QtGui, QtCore

class Example(QtGui.QWidget):

   def __init__(self):
      super(Example, self).__init__()

      self.initUI()

   def initUI(self):

      cal = QtGui.QCalendarWidget(self)
      cal.setGridVisible(True)
      cal.move(20, 20)
      cal.clicked[QtCore.QDate].connect(self.showDate)

      self.lbl = QtGui.QLabel(self)
      date = cal.selectedDate()
      self.lbl.setText(date.toString())
      self.lbl.move(20, 200)

      self.setGeometry(100,100,300,300)
      self.setWindowTitle('Calendar')
      self.show()

   def showDate(self, date):

      self.lbl.setText(date.toString())

def main():

   app = QtGui.QApplication(sys.argv)
   ex = Example()
   sys.exit(app.exec_())

if __name__ == '__main__':
   main()

以上代码产生以下输出:

PyQt QCalendar小部件

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程