Python+Pyqt实现简单GUI电子时钟


Posted in Python onFebruary 22, 2021

本文实例为大家分享了Python+Pyqt实现简单GUI电子时钟的具体代码,供大家参考,具体内容如下

突发奇想想用GUI做一个简单的电子时钟界面,利用pyqt模块也很方便,代码如下:

from PyQt5.QtGui import *
from PyQt5.QtCore import *
from PyQt5.QtWidgets import QWidget,QApplication,QLCDNumber,QVBoxLayout,QMessageBox,QPushButton
import sys
import time

class MyTime(QWidget):
 def __init__(self):
  super().__init__()
  self.initUI()
  self.init_timer()
  #UI界面搭建
 def update_time(self):
  self.lcd.display(time.strftime('%X', time.localtime()))

 def init_timer(self):
  self.timer=QTimer()
  self.timer.setInterval(1000)#设置定时器 1S触发一次
  self.timer.start()#启动定时器
  self.timer.timeout.connect(self.update_time)

 def initUI(self):
  self.resize(400,200)
  self.setWindowTitle("创意时钟")###名称
  self.setWindowIcon(QIcon('xiaomayun.jpg'))#图标

  #初始化 调色板
  self.pl=QPalette()
  self.pl.setColor(QPalette.Background,Qt.darkYellow)
  self.setAutoFillBackground(True)
  self.setPalette(self.pl)#设置顶层布局

  self.lcd=QLCDNumber() #初始化lcd
  self.lcd.setDigitCount(10)#设置数字个数
  self.lcd.setMode(QLCDNumber.Dec)#数字十进制
  self.lcd.setSegmentStyle(QLCDNumber.Flat)#平面模式
  self.lcd.display(time.strftime('%X',time.localtime()))

  ##初始化盒子布局
  self.box_layout=QVBoxLayout()
  self.box_layout.addWidget(self.lcd)#添加LCD组件

  self.box_layout.setAlignment(Qt.AlignCenter)#设置组件在布局中间
  self.setLayout(self.box_layout)#设置窗体布局

  self.btn = QPushButton('Button', self)##创建按钮 测试用
  self.btn.setToolTip('This is a <b>QPushButton</b> widget')
  self.btn.resize(self.btn.sizeHint())
  self.btn.move(50, 50)
  self.btn.clicked.connect(self.on_click)
  self.box_layout.addWidget(self.btn)
  # btn.move(50, 50)

  self.qbtn = QPushButton('Quit', self)
  self.qbtn.clicked.connect(QCoreApplication.instance().quit)
  self.qbtn.resize(self.qbtn.sizeHint())
  self.qbtn.move(300, 150)

  self.show()


 """创建鼠标点击事件"""
 def on_click(self):
  print("PyQt5 button click")


 def closeEvent(self, event):
  reply = QMessageBox.question(self, 'Message',
          "Are you sure to quit?", QMessageBox.Yes |
          QMessageBox.No, QMessageBox.No)
  # 第一个字符串的内容被显示在标题栏上。第二个字符串是对话框上显示的文本。第三个参数指定了显示在对话框上的按钮集合。最后一个参数是默认选中的按钮。
  if reply == QMessageBox.Yes:
   event.accept()
  else:
   event.ignore()


if __name__ == '__main__':
 app=QApplication(sys.argv)
 mt=MyTime()
 app.exec_()

代码演示如下:

Python+Pyqt实现简单GUI电子时钟

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python利用lxml读写xml格式的文件
Aug 10 Python
浅谈Python对内存的使用(深浅拷贝)
Jan 17 Python
Python实现发送与接收邮件的方法详解
Mar 28 Python
PyQt5每天必学之组合框
Apr 20 Python
python版本的仿windows计划任务工具
Apr 30 Python
Python操作Sql Server 2008数据库的方法详解
May 17 Python
Python中logging实例讲解
Jan 17 Python
python爬虫 2019中国好声音评论爬取过程解析
Aug 26 Python
Pytorch在dataloader类中设置shuffle的随机数种子方式
Jan 14 Python
基于Tensorflow使用CPU而不用GPU问题的解决
Feb 07 Python
哈工大自然语言处理工具箱之ltp在windows10下的安装使用教程
May 07 Python
Python自动巡检H3C交换机实现过程解析
Aug 14 Python
pycharm修改文件的默认打开方式的步骤
Jul 29 #Python
Python Django Vue 项目创建过程详解
Jul 29 #Python
python cumsum函数的具体使用
Jul 29 #Python
python利用re,bs4,requests模块获取股票数据
Jul 29 #Python
实例详解Python装饰器与闭包
Jul 29 #Python
对于Python深浅拷贝的理解
Jul 29 #Python
PyCharm中代码字体大小调整方法
Jul 29 #Python
You might like
聊天室php&amp;mysql(六)
2006/10/09 PHP
使用 php4 加速 web 传输
2006/10/09 PHP
php 随机数的产生、页面跳转、件读写、文件重命名、switch语句
2009/08/07 PHP
如何用php获取程序执行的时间
2013/06/09 PHP
Convert Seconds To Hours
2007/06/16 Javascript
加速IE的Javascript document输出的方法
2010/12/02 Javascript
关于二级域名下使用一级域名下的COOKIE的问题
2011/11/07 Javascript
Extjs4 消息框去掉关闭按钮(类似Ext.Msg.alert)
2013/04/02 Javascript
jQuery之自动完成组件的深入解析
2013/06/19 Javascript
Jquery中find与each方法用法实例
2015/02/04 Javascript
jQuery实现自动切换播放的经典滑动门效果
2015/09/12 Javascript
浅谈$('div a') 与$('div&gt;a')的区别
2016/07/18 Javascript
JavaScript重复元素处理方法分析【统计个数、计算、去重复等】
2017/12/14 Javascript
基于substring()和substr()的使用以及区别(实例讲解)
2017/12/28 Javascript
nodejs 如何手动实现服务器
2018/08/20 NodeJs
Node.js 进程平滑离场剖析小结
2019/01/24 Javascript
ES6基础之默认参数值
2019/02/21 Javascript
javascript简单实现深浅拷贝过程详解
2019/10/08 Javascript
p5.js码绘“跳动的小正方形”的实现代码
2019/10/22 Javascript
Python实现注册、登录小程序功能
2018/09/21 Python
python实现简单名片管理系统
2018/11/30 Python
Flask框架 CSRF 保护实现方法详解
2019/10/30 Python
Python读取yaml文件的详细教程
2020/07/21 Python
详解scrapy内置中间件的顺序
2020/09/28 Python
Python numpy大矩阵运算内存不足如何解决
2020/11/19 Python
如何用Python和JS实现的Web SSH工具
2021/02/23 Python
使用tkinter实现三子棋游戏
2021/02/25 Python
俄罗斯儿童和青少年服装、鞋子及配件的在线商店:Orby
2020/02/20 全球购物
新加坡第一大健康与美容零售商:屈臣氏新加坡(Watsons Singapore)
2020/12/11 全球购物
房地产销售计划书
2014/01/10 职场文书
个人培训自我鉴定
2014/03/28 职场文书
龙门石窟导游词
2015/02/02 职场文书
手把手教你制定暑期学习计划,让你度过充实的暑假
2019/08/22 职场文书
nginx处理http请求实现过程解析
2021/03/31 Servers
python实现简单倒计时功能
2021/04/21 Python
MySQL系列之十二 备份与恢复
2021/07/02 MySQL