下面我们实现日期时间框的添加,表示日期时间的文本框可以使用QtWidgets控件下的 QDateEdit() , QTimeEdit() , QDateTime() 三个方法实现。

  1,使用QDateEdit() 我们可以得到一个只显示日期的文本框,在文本框中我们可以手动输入日期,也可以单击右侧的上、下按钮设置日期。不定义默认值的话,日期文边框的例的默认值为2000-01-01

    #创建日期文本框
self.date = QtWidgets.QDateEdit(w)
#调整日期文本框的位置大小
self.date.setGeometry(QtCore.QRect(150,30,160,30))
#设置日期显示的格式
self.date.setDisplayFormat("yyyy-MM-dd")

  效果图如下

  另外,我们修改显示的默认值为当前日期,添加以下代码

    now_day = time.strftime("%Y-%m-%d",time.localtime())
self.date.setDate(QtCore.QDate.fromString(now_day, 'yyyy-MM-dd'))

  效果图如下

  我们还可以使用日历插件获取日期,只需要将日期框的 calendarPopup 属性值为True 即可,代码代码如下

    self.date.setCalendarPopup(True)

  效果图如下

  2,QTimeEdit() 可以创建一个时间的文本框,代码如下

    self.label1 = QtWidgets.QLabel(w)
self.label1.setGeometry(QtCore.QRect(100, 60, 120, 45))
self.label1.setFont(QtGui.QFont("Roman times",14))
self.label1.setText("时间:")
#创建一个时间框
self.time = QtWidgets.QTimeEdit(w)
self.time.setGeometry(QtCore.QRect(150,65,160,30))
self.time.setDisplayFormat("hh:mm:ss")
#获取并定义当前时间
now_time = time.strftime("%H:%M:%S",time.localtime())
self.time.setTime(QtCore.QTime.fromString(now_time, 'hh:mm:ss'))

  效果图如下

  3,上边的设置日期和时间是分开的,操作起来会比较繁琐,这时我们就可以使用 QDateTimeEdit() 方法了

    self.label1 = QtWidgets.QLabel(w)
self.label1.setGeometry(QtCore.QRect(60, 60, 120, 45))
self.label1.setFont(QtGui.QFont("Roman times",14))
self.label1.setText("日期时间:") self.time = QtWidgets.QDateTimeEdit(w)
self.time.setGeometry(QtCore.QRect(150,65,160,30))
self.time.setDisplayFormat("yyyy-MM-dd hh:mm:ss")
#设置使用日历控件
self.time.setCalendarPopup(True)
#获取并定义当前时间
now_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())
self.time.setDateTime(QtCore.QDateTime.fromString(now_time, 'yyyy-MM-dd hh:mm:ss'))

  效果图如下

Python 使用Qt进行开发(三)的更多相关文章

  1. Qt计算器开发(三):执行效果及项目总结

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/guodongxiaren/article/details/26046543 执行效果 project ...

  2. Python 使用Qt进行开发(二)

    上次简单实现了显示窗口,下面我们在窗口中加入一些部件. 1,我们在窗口中使用 setToolTip() 方法添加一个文本提示,在窗口中鼠标暂停几秒即可显示该文本信息. class test(): de ...

  3. Qt计算器开发(二):信号槽实现数学表达式合法性检查

    表达式的合法性 由于我们的计算器不是单步计算的,所以我们能够一次性输入一个长表达式.然而假设用户输入的长表达式不合法的话,那么就会引发灾难.所以有必要对于用户的输入做一个限制. 一些限制举例: 比方, ...

  4. Python服务器开发三:Socket

    Python服务器开发三:Socket   socket是操作系统中I/O的延续,它可以使进程和机器之间的通信成为可能.socket可以看成一个标准的文件描述符.不同的是文件需要用open()函数打开 ...

  5. Qt+ECharts开发笔记(三):ECharts的柱状图介绍、基础使用和Qt封装Demo

    前言   上一篇成功是EChart随着Qt窗口变化而变化,本篇将开始正式介绍柱状图介绍.基础使用,并将其封装一层Qt.  本篇的demo实现了隐藏js代码的方式,实现了一个条形图的基本交互方式,即Qt ...

  6. 进击的Python【第六章】:Python的高级应用(三)面向对象编程

    Python的高级应用(三)面向对象编程 本章学习要点: 面向对象编程介绍 面向对象与面向过程编程的区别 为什么要用面向对象编程思想 面向对象的相关概念 一.面向对象编程介绍 面向对象程序设计(英语: ...

  7. 转:Qt 嵌入式开发环境搭建

    地址: http://www.cnblogs.com/lishixian/articles/3013897.html         作者:lsx_007 这里主要是记录了自己在搭建嵌入式开发环境时阅 ...

  8. 老李分享:使用 Python 的 Socket 模块开发 UDP 扫描工具

    老李分享:使用 Python 的 Socket 模块开发 UDP 扫描工具 poptest是业内唯一的测试开发工程师培训机构,测试开发工程师主要是为测试服务开发测试工具,在工作中要求你做网络级别的安全 ...

  9. 《Flask Web开发——基于Python的Web应用开发实践》一字一句上机实践(上)

    目录 前言 第1章 安装 第2章 程序的基本结构 第3章 模板 第4章 Web表单 第5章 数据库 第6章 电子邮件 第7章 大型程序的结构   前言 学习Python也有一个半月时间了,学到现在感觉 ...

随机推荐

  1. nginx正常启动,ip直接访问失败问题

    1.查看iptables服务示范启动 service iptables status 2.没有安装的话安装 yum install iptables-services 3.修改配置文件, 添加一行: ...

  2. 企业面试题|最常问的MySQL面试题集合(二)

    MySQL的关联查询语句 六种关联查询 交叉连接(CROSS JOIN) 内连接(INNER JOIN) 外连接(LEFT JOIN/RIGHT JOIN) 联合查询(UNION与UNION ALL) ...

  3. 在docker容器下利用数据卷实现在删除了mysql容器或者镜像的情况下恢复数据

    当把mysql容器销毁,在新建一个容器,进行之前的数据恢复. 因为之前建立了数据卷,那么现在就可以利用这个数据卷进行数据恢复. 使用docker volume create volume_name命令 ...

  4. LNMP 架构安装部署

    PHP 安装 LNMP 下 php 在 Apache 服务下是 libphp5.so nginx 服务下是 9000 端口 #确保 web 服务和 MySQL 正常 143 [root@oldboy ...

  5. Windows下搭建Nacos及Seata

    一.简介 本文主要描述Nacos及Seata在Windows环境下环境搭建 下载相关软件: Nacos-1.1.4 Seata-0.9.0 二.安装 2.1安装Nacos 解压nacos-server ...

  6. Ubuntu伪破解Navicat12方法

    一.去官网下载navicat112_premium_cs_x64 for linux版本二.用tar解压安装包三.navicat解压即可用,直接进入解压后的目录,然后用‘./’运行start_navi ...

  7. 机器学习聚类算法之K-means

    一.概念 K-means是一种典型的聚类算法,它是基于距离的,是一种无监督的机器学习算法. K-means需要提前设置聚类数量,我们称之为簇,还要为之设置初始质心. 缺点: 1.循环计算点到质心的距离 ...

  8. 循环 for 读取文件

    cat filename(待读取的文件) | while read line do echo $line done

  9. aes前台加密后台解密

    aes加密npm地址:https://www.npmjs.com/package/crypto-js aes加密git地址/下载: https://github.com/brix/crypto-js ...

  10. CPU、CPU核与线程的关系

    CPU相关概念: CPU:独立的中央处理单元,体现在主板上是有多个CPU的插槽. CPU cores:在每一个CPU上,都可能有多个核(core),每一个核中都有独立的一套ALU.FPU.Cache等 ...