Python PyQt5模块实现窗口GUI界面代码实例


Posted in Python onMay 12, 2020

PyQt5是基于Digia公司强大的图形程式框架Qt5的python接口,由一组python模块构成。PyQt5本身拥有超过620个类和6000函数及方法。在可以运行于多个平台,包括:Unix, Windows, and Mac OS。

代码如下

from PyQt5.QtWidgets import QApplication,QWidget,QProgressBar,QPushButton
from PyQt5.QtCore import QBasicTimer
from PyQt5.QtGui import QIcon
import sys
 
class Example(QWidget):
  def __init__(self):
    super().__init__()
    self.initUI() # 显示窗体内容
  def initUI(self):
    self.pbar = QProgressBar(self)
    self.pbar.setGeometry(30, 50, 200, 25) #设置进度条位置及大小
    self.btn = QPushButton('开始', self)
    self.btn.move(50, 90)
    self.btn.clicked.connect(self.doAction) #点击按钮时执行的动作函数指定为self.doAction()
    # self.btn.setGeometry(50, 90, 40, 25)
 
    self.timer = QBasicTimer() #构建一个计数器
    self.step = 0 #设置基数
    self.setGeometry(300, 300, 280, 170) # 设置整个窗体的大小
    self.setWindowTitle('进度条') #设置窗口标题
    # self.setWindowIcon('logo2.png') #设置窗口图标
    self.show()
 
  def timerEvent(self, *args, **kwargs):
    if self.step >= 100:
      self.timer.stop()
      self.btn.setText('完成')
      return
    self.step += 1
    self.pbar.setValue(self.step) #timer每次重围时将self.step 赋值给pbar
 
 
  def doAction(self):
    if self.timer.isActive():
      self.timer.stop()
      self.btn.setText('开始')
    else:
      self.timer.start(100, self)
      self.btn.setText('停止')
 
if __name__ == '__main__':
  app = QApplication(sys.argv) # 创建一个QT应用对象
  ex = Example()
  sys.exit(app.exec_())

结果

Python PyQt5模块实现窗口GUI界面代码实例

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

Python 相关文章推荐
用python + openpyxl处理excel2007文档思路以及心得
Jul 14 Python
python 出现SyntaxError: non-keyword arg after keyword arg错误解决办法
Feb 14 Python
python中利用xml.dom模块解析xml的方法教程
May 24 Python
Python遍历numpy数组的实例
Apr 04 Python
Python装饰器原理与简单用法实例分析
Apr 29 Python
解决Pycharm调用Turtle时 窗口一闪而过的问题
Feb 16 Python
Python使用MyQR制作专属动态彩色二维码功能
Jun 04 Python
python pip源配置,pip配置文件存放位置的方法
Jul 12 Python
python代码实现TSNE降维数据可视化教程
Feb 28 Python
python实现跨excel sheet复制代码实例
Mar 03 Python
Mac PyCharm中的.gitignore 安装设置教程
Apr 16 Python
解决virtualenv -p python3 venv报错的问题
Feb 05 Python
从0到1使用python开发一个半自动答题小程序的实现
May 12 #Python
Python列表去重复项的N种方法(实例代码)
May 12 #Python
python3中的logging记录日志实现过程及封装成类的操作
May 12 #Python
Pycharm激活方法及详细教程(详细且实用)
May 12 #Python
PyTorch在Windows环境搭建的方法步骤
May 12 #Python
pycharm 2018 激活码及破解补丁激活方式
Sep 21 #Python
pycharm 激活码及使用方式的详细教程
May 12 #Python
You might like
基于mysql的论坛(1)
2006/10/09 PHP
用PHP实现的随机广告显示代码
2007/06/14 PHP
PHP 5.0对象模型深度探索之对象复制
2008/03/27 PHP
php array_map()数组函数使用说明
2011/07/12 PHP
php explode函数实例代码
2012/02/27 PHP
php jsonp单引号转义
2014/11/23 PHP
PHP中两个float(浮点数)比较实例分析
2015/09/27 PHP
PHP对象实例化单例方法
2017/01/19 PHP
PHP的Trait机制原理与用法分析
2019/10/18 PHP
浅谈laravel orm 中的一对多关系 hasMany
2019/10/21 PHP
Javascript操纵Cookie实现购物车程序
2006/11/23 Javascript
javascript 变量作用域 代码分析
2009/06/26 Javascript
Jquery中Ajax 缓存带来的影响的解决方法
2011/05/19 Javascript
网站内容禁止复制和粘贴、另存为的js代码
2014/02/26 Javascript
jquery 扑捉回车键事件代码
2014/04/24 Javascript
javascript数组去重方法终极总结
2014/06/05 Javascript
javascript多行字符串的简单实现方式
2015/05/04 Javascript
bootstrap datetimepicker日期插件超详细使用方法介绍
2017/02/23 Javascript
JS+canvas绘制的动态机械表动画效果
2017/09/12 Javascript
JS中touchstart事件与click事件冲突的解决方法
2018/03/12 Javascript
Javascript通过控制类名更改样式
2019/05/24 Javascript
vue实现动态表格提交参数动态生成控件的操作
2020/11/09 Javascript
[11:12]2018DOTA2国际邀请赛寻真——绿色长城OpTic
2018/08/10 DOTA
[45:34]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第一场 12.18
2020/12/19 DOTA
python实现去除下载电影和电视剧文件名中的多余字符的方法
2014/09/23 Python
Windows环境下python环境安装使用图文教程
2018/03/13 Python
在Python中定义一个常量的方法
2018/11/10 Python
anaconda中更改python版本的方法步骤
2019/07/14 Python
Pytorch.nn.conv2d 过程验证方式(单,多通道卷积过程)
2020/01/03 Python
美国户外生活方式品牌:Eddie Bauer
2016/12/28 全球购物
悬挂训练绳:TRX
2017/12/14 全球购物
马来西亚网上购物:Youbeli
2018/03/30 全球购物
Linux如何命名文件--使用文件名时应注意
2014/05/29 面试题
财务经理岗位职责
2013/11/09 职场文书
2016年第32个教师节红领巾广播稿
2015/12/18 职场文书
JS一分钟在github+Jekyll的博客中添加访问量功能的实现
2021/04/03 Javascript