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获取糗百图片代码实例
Dec 18 Python
用Python进行行为驱动开发的入门教程
Apr 23 Python
Python文件及目录操作实例详解
Jun 04 Python
详解Python中的相对导入和绝对导入
Jan 06 Python
Python字典数据对象拆分的简单实现方法
Dec 05 Python
python中多层嵌套列表的拆分方法
Jul 02 Python
Python中作用域的深入讲解
Dec 10 Python
python、Matlab求定积分的实现
Nov 20 Python
pytorch中使用cuda扩展的实现示例
Feb 12 Python
Django多数据库联用实现方法解析
Nov 12 Python
python第三方网页解析器 lxml 扩展库与 xpath 的使用方法
Apr 06 Python
Python中else的三种使用场景
Jun 16 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 和 MySQL 基础教程(四)
2006/10/09 PHP
PHP 可阅读随机字符串代码
2010/05/26 PHP
php连接函数implode与分割explode的深入解析
2013/06/26 PHP
php中隐形字符65279(utf-8的BOM头)问题
2014/08/16 PHP
PHP将回调函数作用到给定数组单元的方法
2014/08/19 PHP
Windows下PHP开发环境搭建教程(Apache+PHP+MySQL)
2016/06/13 PHP
utf8的编码算法 转载
2006/12/27 Javascript
js几个验证函数代码
2010/03/25 Javascript
jQuery结合PHP+MySQL实现二级联动下拉列表[实例]
2011/11/15 Javascript
jQuery 瀑布流 浮动布局(一)(延迟AJAX加载图片)
2012/05/23 Javascript
javascript和HTML5利用canvas构建猜牌游戏实现算法
2013/07/17 Javascript
JS调用页面表格导出excel示例代码
2014/03/18 Javascript
AngularJS 依赖注入详解及示例代码
2016/08/17 Javascript
AngularJS过滤器filter用法实例分析
2016/11/04 Javascript
jQuery之动画效果大全
2016/11/09 Javascript
js 倒计时(高效率服务器时间同步)
2017/09/12 Javascript
JS扁平化输出数组的2种方法解析
2019/09/17 Javascript
React组件设计模式之组合组件应用实例分析
2020/04/29 Javascript
[00:52]黑暗之门更新 新英雄孽主驾临DOTA2
2016/08/24 DOTA
Python+Pika+RabbitMQ环境部署及实现工作队列的实例教程
2016/06/29 Python
解决uWSGI的编码问题详解
2017/03/24 Python
spark: RDD与DataFrame之间的相互转换方法
2018/06/07 Python
python 获得任意路径下的文件及其根目录的方法
2019/02/16 Python
python做反被爬保护的方法
2019/07/01 Python
Python 爬虫实现增加播客访问量的方法实现
2019/10/31 Python
解决django框架model中外键不落实到数据库问题
2020/05/20 Python
keras实现theano和tensorflow训练的模型相互转换
2020/06/19 Python
PyTorch 导数应用的使用教程
2020/08/31 Python
Python3爬虫RedisDump的安装步骤
2021/02/20 Python
EJB的基本架构
2016/09/22 面试题
竞选大队干部演讲稿
2014/09/11 职场文书
员工试用期自我鉴定范文
2014/09/15 职场文书
2016新年晚会开场白
2015/12/03 职场文书
Python爬虫入门案例之爬取去哪儿旅游景点攻略以及可视化分析
2021/10/16 Python
Nginx虚拟主机的搭建的实现步骤
2022/01/18 Servers
教你如何用cmd快速登录服务器
2022/06/10 Servers