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递归计算N!的方法
May 05 Python
Python中使用ElementTree解析XML示例
Jun 02 Python
浅谈Python中的闭包
Jul 08 Python
python通过加号运算符操作列表的方法
Jul 28 Python
Django 实现下载文件功能的示例
Mar 06 Python
python unittest实现api自动化测试
Apr 04 Python
python list元素为tuple时的排序方法
Apr 18 Python
Python处理CSV与List的转换方法
Apr 19 Python
利用Python实现微信找房机器人实例教程
Mar 10 Python
Django框架实现的分页demo示例
May 25 Python
python 并发编程 阻塞IO模型原理解析
Aug 20 Python
python Matplotlib数据可视化(1):简单入门
Sep 30 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
PHP中foreach循环中使用引用要注意的地方
2011/01/02 PHP
php中通过curl模拟登陆discuz论坛的实现代码
2012/02/16 PHP
Laravel中基于Artisan View扩展包创建及删除应用视图文件的方法
2016/10/08 PHP
Yii2实现多域名跨域同步登录退出
2017/02/04 PHP
Yii2处理密码加密及验证的方法
2019/05/12 PHP
thinkphp框架表单数组实现图片批量上传功能示例
2020/04/04 PHP
学习YUI.Ext基础第一天
2007/03/10 Javascript
setTimeout和setInterval的区别你真的了解吗?
2011/03/31 Javascript
javascript中[]和{}对象使用介绍
2013/03/20 Javascript
在linux中使用包管理器安装node.js
2015/03/13 Javascript
cocos2dx骨骼动画Armature源码剖析(三)
2015/09/08 Javascript
JS实现在状态栏显示打字效果完整实例
2015/11/02 Javascript
javascript跑马灯抽奖实例讲解
2020/04/17 Javascript
javascript随机抽取0-100之间不重复的10个数
2016/02/25 Javascript
精彩的Bootstrap案例分享 重点在注释!(选项卡、栅格布局)
2016/07/01 Javascript
原生js实现弹出层效果
2017/01/20 Javascript
JS原生数据双向绑定实现代码
2017/08/14 Javascript
通过button将form表单的数据提交到action层的实例
2017/09/08 Javascript
vue父组件异步获取数据传给子组件的方法
2018/07/26 Javascript
webpack中如何加载静态文件的方法步骤
2019/05/18 Javascript
vue webpack重写cookie路径的方法
2019/07/10 Javascript
JS回调函数原理与用法详解【附PHP回调函数】
2019/07/20 Javascript
Layui点击图片弹框预览的实现方法
2019/09/16 Javascript
ES6 Object.assign()的用法及其使用
2020/01/18 Javascript
[04:03]辉夜杯主赛事 12月25日RECAP精彩回顾
2015/12/26 DOTA
[46:57]EG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
Python实现公历(阳历)转农历(阴历)的方法示例
2017/08/22 Python
Python 中包/模块的 `import` 操作代码
2019/04/22 Python
Python笔记之工厂模式
2019/11/20 Python
Python figure参数及subplot子图绘制代码
2020/04/18 Python
美国顶级水上运动专业店:Marine Products
2018/04/15 全球购物
英国HYPE双肩包官网:英国本土时尚潮牌
2018/09/26 全球购物
JD Sports澳洲官网:英国领先的运动鞋和运动时尚零售商
2020/02/15 全球购物
编写类String 的构造函数、析构函数和赋值函数
2012/09/09 面试题
中学生校园广播稿
2014/01/16 职场文书
纪念九一八事变演讲稿:牢记九一八,屈辱怎能忘
2014/09/14 职场文书