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 相关文章推荐
pandas的object对象转时间对象的方法
Apr 11 Python
在windows下Python打印彩色字体的方法
May 15 Python
Python 实现交换矩阵的行示例
Jun 26 Python
如何基于Python获取图片的物理尺寸
Nov 25 Python
Python:合并两个numpy矩阵的实现
Dec 02 Python
python实现大战外星人小游戏实例代码
Dec 26 Python
python numpy库linspace相同间隔采样的实现
Feb 25 Python
Python tkinter 下拉日历控件代码
Mar 04 Python
python基于socket函数实现端口扫描
May 28 Python
python开发前景如何
Jun 11 Python
Python django框架 web端视频加密的实例详解
Nov 20 Python
详解Golang如何实现支持随机删除元素的堆
Sep 23 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
隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-Space个人空间管理版权方法
2007/02/22 PHP
PHP中替换换行符的几种方法小结
2012/10/15 PHP
PHP lcfirst()函数定义与用法
2019/03/08 PHP
javascript innerHTML、outerHTML、innerText、outerText的区别
2008/11/24 Javascript
jQuery制作的别致导航有阴影背景高亮模式窗口
2014/04/15 Javascript
Node.js实现在目录中查找某个字符串及所在文件
2014/09/03 Javascript
限制上传文件大小和格式的jQuery插件实例
2015/01/24 Javascript
JavaScript设计模式之工厂模式和构造器模式
2015/02/11 Javascript
javascript生成不重复的随机数
2015/07/17 Javascript
xmlplus组件设计系列之树(Tree)(9)
2017/05/02 Javascript
vue 实现 tomato timer(蕃茄钟)实例讲解
2017/07/24 Javascript
详解Vue2.0 事件派发与接收
2017/09/05 Javascript
原生JS封装animate运动框架的实例
2017/10/12 Javascript
Js面试算法详解
2018/04/08 Javascript
如何使node也支持从url加载一个module详解
2018/06/05 Javascript
工作中常用到的ES6语法
2018/09/04 Javascript
优雅的将ElementUI表格变身成树形表格的方法步骤
2019/04/11 Javascript
微信打开网址添加在浏览器中打开提示的办法
2019/05/20 Javascript
Vue最新防抖方案(必看篇)
2019/10/30 Javascript
JS 设计模式之:工厂模式定义与实现方法浅析
2020/05/06 Javascript
用matplotlib画等高线图详解
2017/12/14 Python
django自带的server 让外网主机访问方法
2018/05/14 Python
python3安装crypto出错及解决方法
2019/07/30 Python
Django实现前台上传并显示图片功能
2020/05/29 Python
python打包生成so文件的实现
2020/10/30 Python
CSS3 @font-face属性使用指南
2014/12/12 HTML / CSS
Larsson & Jennings官网:现代瑞士钟表匠
2018/03/20 全球购物
会计电算化应届生求职信
2013/11/03 职场文书
电子商务专业推荐信范文
2013/12/02 职场文书
正风肃纪剖析材料
2014/02/18 职场文书
军训拉歌口号
2014/06/13 职场文书
小学“向国旗敬礼”网上签名寄语活动总结
2014/09/27 职场文书
2014年物业公司工作总结
2014/11/22 职场文书
2016年中秋节寄语大全
2015/12/07 职场文书
自荐信大全
2019/03/21 职场文书
CSS实现渐变色边框(Gradient borders)的5种方法
2022/03/25 HTML / CSS