PyQt5每天必学之日历控件QCalendarWidget

yipeiwu_com7年前Python基础

QCalendarWidget 是日历控件。它允许用户以简单和直观的方式选择日期。

#!/usr/bin/python3
# -*- coding: utf-8 -*-

"""
PyQt5 教程

这个例子使用QCalendarWidget控件创建了一个日历。

作者:我的世界你曾经来过
博客:http://blog.csdn.net/weiaitaowang
最后编辑:2016年8月4日
"""

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QCalendarWidget, QLabel
from PyQt5.QtCore import QDate

class Example(QWidget):

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

 self.initUI()

 def initUI(self):

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

 self.lb1 = QLabel(self)
 date = cal.selectedDate()
 self.lb1.setText(date.toString())
 self.lb1.move(130, 260)

 self.setGeometry(300, 300, 350, 300)
 self.setWindowTitle('日历控件') 
 self.show()

 def showDate(self, date):

 self.lb1.setText(date.toString())

if __name__ == '__main__':

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

这个例子有一个日历控件和一个标签控件。当前选定的日期用标签显示。

cal = QCalendarWidget(self)

使用 QCalendarWidget 创建日历控件

cal.clicked[QDate].connect(self.showDate)

如果我们在日历控件中选择一个日期,clicked[QDate]信号将连接到用户定义的showDate()方法。

def showDate(self, date):
    self.lb1.setText(date.toString())

我们通过调用selectedDate()方法检索选定的日期。然后我们将Date对象转换成字符串并显示在标签控件中。

程序执行后

这里写图片描述

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python计算回文数的方法

本文实例讲述了Python计算回文数的方法。分享给大家供大家参考。具体如下: 这里检查数字是不是回文数,用196算法生成一个数字的回文数 num = 905; def is_Pali...

Win10环境python3.7安装dlib模块趟过的坑

Win10环境python3.7安装dlib模块趟过的坑

在头条看了一篇文章,说五行代码实现人脸识别,一时感兴趣了,来搞搞 先是按照文章说的 操作了几步,到后面虽然,import dlib 不报错,但是 代码里面运行的时候 detector...

在Django的上下文中设置变量的方法

前一节的例子只是简单的返回一个值。 很多时候设置一个模板变量而非返回值也很有用。 那样,模板作者就只能使用你的模板标签所设置的变量。 要在上下文中设置变量,在 render() 函数的c...

tensorflow实现tensor中满足某一条件的数值取出组成新的tensor

tensorflow实现tensor中满足某一条件的数值取出组成新的tensor

首先使用tf.where()将满足条件的数值索引取出来,在numpy中,可以直接用矩阵引用索引将满足条件的数值取出来,但是在tensorflow中这样是不行的。所幸,tensorflow...

VSCode下好用的Python插件及配置

VSCode下好用的Python插件及配置

MS Python插件。 这是微软官方的Python插件,已经自带很多功能。下面是插件功能描述,其中部分内容我做了翻译。 a)     ...