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中使用partial改变方法默认参数实例
Apr 28 Python
Python 安装setuptools和pip工具操作方法(必看)
May 22 Python
python字典快速保存于读取的方法
Mar 23 Python
python3的输入方式及多组输入方法
Oct 17 Python
对python中Json与object转化的方法详解
Dec 31 Python
python3使用matplotlib绘制条形图
Mar 25 Python
Python实现数据结构线性链表(单链表)算法示例
May 04 Python
Python Opencv任意形状目标检测并绘制框图
Jul 23 Python
python使用pymongo与MongoDB基本交互操作示例
Apr 09 Python
scrapy爬虫:scrapy.FormRequest中formdata参数详解
Apr 30 Python
python爬虫容易学吗
Jun 02 Python
Python 的 f-string 可以连接字符串与数字的原因解析
Feb 20 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
一个简单的自动发送邮件系统(二)
2006/10/09 PHP
PHP实现过滤掉非汉字字符只保留中文字符
2015/06/04 PHP
JavaScript中实现异步编程模式的4种方法
2014/09/24 Javascript
用简洁的jQuery方法toggleClass实现隔行换色
2014/10/22 Javascript
js实现漂浮回顶部按钮实例
2015/05/06 Javascript
javascript组合使用构造函数模式和原型模式实例
2015/06/04 Javascript
JavaScript File分段上传
2016/03/10 Javascript
AngularJS入门教程之服务(Service)
2016/07/27 Javascript
Angularjs 制作购物车功能实例代码
2016/09/14 Javascript
Vue.js常用指令的使用小结
2017/06/23 Javascript
AngularJS点击添加样式、点击变色设置的实例代码
2017/07/27 Javascript
解决vue-quill-editor上传内容由于图片是base64的导致字符太长的问题
2018/08/20 Javascript
jQuery中使用validate插件校验表单功能
2019/05/24 jQuery
[01:00:14]DOTA2官方TI8总决赛纪录片 真视界True Sight
2019/01/16 DOTA
python 判断一个进程是否存在
2009/04/09 Python
使用Python读写文本文件及编写简单的文本编辑器
2016/03/11 Python
python使用sqlite3时游标使用方法
2018/03/13 Python
关于Python的一些学习总结
2018/05/25 Python
浅谈Python中range与Numpy中arange的比较
2020/03/11 Python
查看jupyter notebook每个单元格运行时间实例
2020/04/22 Python
如何实现一个python函数装饰器(Decorator)
2020/10/12 Python
python获取linux系统信息的三种方法
2020/10/14 Python
详解BeautifulSoup获取特定标签下内容的方法
2020/12/07 Python
HTML5实现可缩放时钟代码
2017/08/28 HTML / CSS
彼得罗夫美国官网:Peter Thomas Roth美国(青瓜面膜)
2017/11/05 全球购物
POS解决方案:MUNBYN(热敏打印机、条形码扫描仪)
2020/06/09 全球购物
工商技校毕业生自荐信
2013/11/15 职场文书
工作个人的自我评价
2014/01/14 职场文书
党支部书记先进事迹
2014/01/17 职场文书
房屋租赁协议书
2014/04/10 职场文书
2014年后备干部工作总结
2014/12/08 职场文书
小学三八妇女节活动总结
2015/02/06 职场文书
2015年领导干部廉洁自律工作总结
2015/05/26 职场文书
画展观后感
2015/06/17 职场文书
golang在GRPC中设置client的超时时间
2021/04/27 Golang
spring boot项目application.properties文件存放及使用介绍
2021/06/30 Java/Android