PyQt5:QCalendarWidget日历部件(27)

原创 2016年06月01日 00:51:37

学习《PyQt4入门指南 PDF中文版.pdf 》笔记

QCalendarWidget类提供了以月为单位的日历部件。该部件允许用户以一种简单而直接的方式选择日期。

<span style="font-size:12px;">#!/usr/bin/python
# calendar.py

from PyQt5.QtWidgets import QApplication, QCalendarWidget, QLabel, QVBoxLayout
from PyQt5 import QtWidgets
from PyQt5.QtCore import Qt, QBasicTimer

class Calendar(QtWidgets.QWidget):
    def __init__(self, parent= None):
        QtWidgets.QWidget.__init__(self)
        
        self.setGeometry(300, 300, 350, 300)
        self.setWindowTitle('Calendar')
        self.cal = QCalendarWidget(self)
        self.cal.setGridVisible(True)
        self.cal.selectionChanged.connect(self.showDate)
        self.label = QLabel(self)
        date = self.cal.selectedDate()
        self.label.setText(str(date.toPyDate()))
        vbox = QVBoxLayout()
        vbox.addWidget(self.cal)
        vbox.addWidget(self.label)
        self.setLayout(vbox)
        
    def showDate(self):
        date = self.cal.selectedDate()
        self.label.setText(str(date.toPyDate()))

if __name__ == "__main__":
    import sys
    app = QApplication(sys.argv)
    qb = Calendar()
    qb.show()
    sys.exit(app.exec_())</span>

该示例窗口拥有一个日历部件和一个标签部件。当前被选中的日期被显示在标签部件中。

         使用self.cal = QCalendarWidget(self)语句创建一个日历对象。

         self.cal.selectionChanged.connect(self.showDate)  语句将日历对象的selectionChanged()信号和自定义的showDate()方法相连接。这样在我们选定一个日期后,日历对象的selectionChanged()消息就会触发,而与之相连的showDate()方法就会被调用。

         defshowDate(self):

         date = self.cal.selectedDate()

         self.label.setText(str(date.toPyDate()))

         在showDate方法中,我们使用selectedDate方法获取被选择的日期。然后将其转换为字符串并显示在标签部件中。


版权声明:本文为博主原创文章,未经博主允许不得转载。

PyQt5教程-15-日历控件

QCalendarWidget 是日历控件。它允许用户以简单和直观的方式选择日期。#!/usr/bin/python3 # -*- coding: utf-8 -*-""" PyQt5 教程这个例子使...
  • weiaitaowang
  • weiaitaowang
  • 2016年08月04日 09:43
  • 1262

QCalendar的使用:实现弹出日历选择日期的例子

选择后DateEdit框内显示的是从弹出的日历中选择的Date 具体的实现代码: //构造函数里设置日历 //首先使calendarWidget隐藏。注:calendarWidget是calen...
  • jimmyzj123456
  • jimmyzj123456
  • 2013年07月04日 10:06
  • 3232

Qt浅谈之六:日历(QCalendarWidget)

Qt的demo中有CalendarWidget的里,本程序将其国际化,并随时隐藏不必要的设计部件,根据网上的例子增加了一些配置按钮和公历对农历的一些转换,并修复了一些故障。主要目的是掌握其布局的紧凑,...
  • taiyang1987912
  • taiyang1987912
  • 2014年06月26日 21:47
  • 17102

PyQt5 widgets

组件是应用程序的基本构建块。 PyQt5有各种各样的组件件,包括按钮,复选框,滑块或列表框。 在本教程的这一节中,我们将描述几个有用的组件:QCheckBox,ToggleButton,QSlider...
  • x728999452
  • x728999452
  • 2016年11月30日 19:47
  • 1165

QlineEdit和QCalendarWidget做的简单日历

最近项目的需要,需要做一个日历。于是找资料,原来Qt中已经封装好了一个类QCalendarWidget,专门做日历的。于是我用QlineEdit加QFontComboBox。做了一个简易的日历 一...
  • fanzhang1990
  • fanzhang1990
  • 2013年09月03日 11:19
  • 5166

QT中使用QCalendarWidget日历

实现的功能是点击“日历”按钮后,弹出日历框,选择好日期后,日历框关闭,并将选择的日期显示在QDateEdit中。 当时用的是QCalendarWidget的clicked()函数,但是无法实现,后来...
  • KimHerojae
  • KimHerojae
  • 2014年12月23日 16:20
  • 3388

Qt浅谈之日历(QCalendarWidget)

一、简介        Qt的demo中有CalendarWidget的里,本程序将其国际化,并随时隐藏不必要的设计部件,根据网上的例子增加了一些配置按钮和公历对农历的一些转换,并修复了一些故障...
  • tian_110
  • tian_110
  • 2015年01月04日 21:54
  • 1115

Qt笔记-qss定制QCalendarWidget

-由于QCalendarWidget是Qt的一种复杂控件,故除了qss外,还需要进行一些代码编写以达到定制效果 if ( p->inherits("QCalendarWidget") ) ...
  • cookic12346
  • cookic12346
  • 2017年09月07日 16:15
  • 363

QCalendarWidget 样式设置

修改日历的样式,使用QSS设置,做个记录 图是借用的网友的,如图显示:需要修改的地方有大致这么5处,我们一个一个来说: 1. 左右两边的箭头 这个我试了qss还是没成功,因为这两个箭头跟我贴的图就...
  • wuchalilun
  • wuchalilun
  • 2017年06月23日 10:14
  • 1133

Qt 日历可显示阴历生宵和时钟基于QCalendarWidget

  • 2015年08月24日 10:21
  • 1.13MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PyQt5:QCalendarWidget日历部件(27)
举报原因:
原因补充:

(最多只允许输入30个字)