python GUI库图形界面开发之PyQt5状态栏控件QStatusBar详细使用方法实例


Posted in Python onFebruary 28, 2020

PyQt5状态栏控件QStatusBar简介

MainWindow对象在底部保留有一个水平条,作为状态栏(QstatusBar),用于显示永久或临时的状态信息

QStatusBar类中的常用方法

方法 描述
addWidget() 在状态栏中添加给定的窗口小控件对象
addPermanentWidget() 在状态栏中永久添加给定的窗口小控件对象
showMessage() 在状态栏显示一条临时信息,指定时间间隔
clearMessage() 删除正在显示的临时信息
removeWidget() 从状态栏中移除指定的小控件

QStatusBar的使用实例

import sys
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *

class StatusDemo(QMainWindow):
  def __init__(self,parent=None):
    super(StatusDemo, self).__init__(parent)

    #实例化菜单栏
    bar=self.menuBar()
    #添加父菜单
    file=bar.addMenu('File')
    #添加子菜单
    file.addAction('show')
    #当菜单对象被点击时,触发绑定的自定义的槽函数
    file.triggered[QAction].connect(self.processTrigger)

    #设置当行文本输入框为中间控件
    self.setCentralWidget(QTextEdit())

    #实例化状态栏
    self.statusBar=QStatusBar()

    self.setWindowTitle('QStatusBar例子')

    #设置状态栏,类似布局设置
    self.setStatusBar(self.statusBar)

  def processTrigger(self,q):

    if (q.text()=='show'):
      #设置状态栏的显示文本以及显示时间
      self.statusBar.showMessage(q.text()+'菜单选项被点击了',5000)
if __name__ == '__main__':
  app=QApplication(sys.argv)
  demo=StatusDemo()
  demo.show()
  sys.exit(app.exec_())

运行效果如下

python GUI库图形界面开发之PyQt5状态栏控件QStatusBar详细使用方法实例

QStatusBar代码分析

在这个例子中,顶层窗口MainWindow有一个菜单栏和一个QTextEdit对象,作为中心控件

当单击MenuBar的菜单时,将triggered信号与槽函数进行绑定

#当菜单对象被点击时,触发绑定的自定义的槽函数
file.triggered[QAction].connect(self.processTrigger)

当单击show菜单选项时,会在状态栏提示信息,5秒后消失

#设置状态栏的显示文本以及显示时间
self.statusBar.showMessage(q.text()+'菜单选项被点击了',5000)

通过主窗口的QMainWindow的setStatusBar()函数设置状态栏,核心代码如下

#实例化状态栏
self.statusBar=QStatusBar()
#设置状态栏,类似布局设置
self.setStatusBar(self.statusBar)

本文主要讲解了PyQt5状态栏控件QStatusBar详细使用方法与实例,更多关于PyQt5控件知识请查看下面的相关链接

Python 相关文章推荐
python时间整形转标准格式的示例分享
Feb 14 Python
Python封装shell命令实例分析
May 05 Python
Python数据结构之顺序表的实现代码示例
Nov 15 Python
Python2.7基于笛卡尔积算法实现N个数组的排列组合运算示例
Nov 23 Python
selenium处理元素定位点击无效问题
Jun 12 Python
python实现各种插值法(数值分析)
Jul 30 Python
Python数据库小程序源代码
Sep 15 Python
python在不同条件下的输入与输出
Feb 13 Python
安装Anaconda3及使用Jupyter的方法
Oct 27 Python
Pandas数据分析的一些常用小技巧
Feb 07 Python
解决python的空格和tab混淆而报错的问题
Feb 26 Python
python编程实现清理微信重复缓存文件
Nov 01 Python
python sklearn包——混淆矩阵、分类报告等自动生成方式
Feb 28 #Python
python GUI库图形界面开发之PyQt5计数器控件QSpinBox详细使用方法与实例
Feb 28 #Python
python GUI库图形界面开发之PyQt5切换按钮控件QPushButton详细使用方法与实例
Feb 28 #Python
浅谈ROC曲线的最佳阈值如何选取
Feb 28 #Python
python GUI库图形界面开发之PyQt5多行文本框控件QTextEdit详细使用方法实例
Feb 28 #Python
python GUI库图形界面开发之PyQt5单选按钮控件QRadioButton详细使用方法与实例
Feb 28 #Python
python GUI库图形界面开发之PyQt5复选框控件QCheckBox详细使用方法与实例
Feb 28 #Python
You might like
支付宝接口开发集成支付环境小结
2015/03/17 PHP
CakePHP框架Session设置方法分析
2017/02/23 PHP
PHP实现登录验证码校验功能
2018/05/17 PHP
用 javascript 实现的点击复制代码
2007/03/24 Javascript
js URL参数的拼接方法比较
2012/02/15 Javascript
javascript中不等于的代码是什么怎么写
2013/12/29 Javascript
JavaScript学习笔记之Cookie对象
2015/01/22 Javascript
创建你的第一个AngularJS应用的方法
2015/06/16 Javascript
js实现当复选框选择匿名登录时隐藏登录框效果
2015/08/14 Javascript
JavaScript设计模式经典之工厂模式
2016/02/24 Javascript
JavaScript模拟鼠标右键菜单效果
2020/12/08 Javascript
AngularJS入门教程之双向绑定详解
2016/08/18 Javascript
通过npm引用的vue组件使用详解
2017/03/02 Javascript
ajax+node+request爬取网络图片的实例(宅男福利)
2017/08/28 Javascript
jQuery简单实现对数组去重及排序操作实例
2017/10/31 jQuery
JS实现的冒泡排序,快速排序,插入排序算法示例
2019/03/02 Javascript
详解vue 2.6 中 slot 的新用法
2019/07/09 Javascript
如何利用nodejs实现命令行游戏
2020/11/24 NodeJs
[05:04]完美世界携手游戏风云打造 卡尔工作室地图界面篇
2013/04/23 DOTA
[06:42]DOTA2每周TOP10 精彩击杀集锦vol.1
2014/06/25 DOTA
Python微信企业号开发之回调模式接收微信端客户端发送消息及被动返回消息示例
2017/08/21 Python
和孩子一起学习python之变量命名规则
2018/05/27 Python
python leetcode 字符串相乘实例详解
2018/09/03 Python
Python中bisect的使用方法
2019/12/31 Python
Tensorflow Summary用法学习笔记
2020/01/10 Python
pymysql 插入数据 转义处理方式
2020/03/02 Python
Window系统下Python如何安装OpenCV库
2020/03/05 Python
阿迪达斯俄罗斯官方商城:adidas俄罗斯
2017/03/08 全球购物
阿迪达斯英国官方网站:adidas英国
2019/08/13 全球购物
美国用餐电影院:Alamo Drafthouse Cinema
2020/01/23 全球购物
定义一结构体变量,用其表示点坐标,并输入两点坐标,求两点之间的距离
2015/08/17 面试题
如何查找网页漏洞
2016/06/22 面试题
个人租房协议书样本
2014/10/01 职场文书
小学生暑假安全保证书
2015/07/13 职场文书
初中数学教学随笔
2015/08/15 职场文书
教学工作总结范文5篇
2019/08/19 职场文书