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队列的定义与使用方法示例
Jun 24 Python
Python数据结构与算法之列表(链表,linked list)简单实现
Oct 30 Python
Python实现感知机(PLA)算法
Dec 20 Python
Python实现利用163邮箱远程关电脑脚本
Feb 22 Python
python3实现多线程聊天室
Dec 12 Python
使用CodeMirror实现Python3在线编辑器的示例代码
Jan 14 Python
Python 多线程,threading模块,创建子线程的两种方式示例
Sep 29 Python
Django Channel实时推送与聊天的示例代码
Apr 30 Python
python2.7使用scapy发送syn实例
May 05 Python
解决PyCharm不在run输出运行结果而不是再Console里输出的问题
Sep 21 Python
python中time.ctime()实例用法
Feb 03 Python
教你如何使用Python下载B站视频的详细教程
Apr 29 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 获取当前访问的url文件名的方法小结
2010/02/08 PHP
php快速url重写 更新版[需php 5.30以上]
2010/04/20 PHP
利用php获取服务器时间的实现代码
2013/06/07 PHP
如何取得中文字符串中出现次数最多的子串
2013/08/08 PHP
php class类的用法详细总结
2013/10/17 PHP
php数组保存文本与文本反编成数组实例
2014/11/13 PHP
ThinkPHP 整合Bootstrap Ajax分页样式
2016/12/23 PHP
thinkphp5框架结合mysql实现微信登录和自定义分享链接与图文功能示例
2019/08/13 PHP
javascript中比较字符串是否相等的方法
2013/07/23 Javascript
javascript读取Xml文件做一个二级联动菜单示例
2014/03/17 Javascript
js 判断各种数据类型的简单方法(推荐)
2016/08/29 Javascript
jQuery中Nicescroll滚动条插件的用法
2016/11/10 Javascript
VueJS事件处理器v-on的使用方法
2017/09/27 Javascript
JS实现在文本指定位置插入内容的简单示例
2017/12/22 Javascript
深入剖析Express cookie-parser中间件实现示例
2018/02/01 Javascript
vue+element搭建后台小总结 el-dropdown下拉功能
2020/04/10 Javascript
javascript实现移动端红包雨页面
2020/06/23 Javascript
[48:00]EG vs LGD 2018国际邀请赛淘汰赛BO3 第二场 8.26
2018/08/29 DOTA
python抓取网页时字符集转换问题处理方案分享
2014/06/19 Python
纯Python开发的nosql数据库CodernityDB介绍和使用实例
2014/10/23 Python
python多进程控制学习小结
2018/10/31 Python
python之mock模块基本使用方法详解
2019/06/27 Python
Python3.7 读取 mp3 音频文件生成波形图效果
2019/11/05 Python
Pycharm中如何关掉python console
2020/10/27 Python
python help函数实例用法
2020/12/06 Python
HTML中使用SVG与SVG预定义形状元素介绍
2013/06/28 HTML / CSS
详解移动端Html5页面中1px边框的几种解决方法
2018/07/24 HTML / CSS
外贸学院会计专业应届生求职信
2013/11/14 职场文书
专升本个人自我评价
2013/12/22 职场文书
经典大学生求职信范文
2014/01/06 职场文书
纪律教育学习月活动总结
2014/08/27 职场文书
医院护士党的群众路线教育实践活动对照检查材料思想汇报
2014/10/04 职场文书
保安辞职申请书应该怎么写?
2019/07/15 职场文书
python绘制箱型图
2021/04/27 Python
Java中常用解析工具jackson及fastjson的使用
2021/06/28 Java/Android
SQL Server #{}可以防止SQL注入
2022/05/11 SQL Server