PyQt5 实现状态栏永久显示消息

前言:

课程设计打算用qt和python做一个上位机,现在的需求是要在状态栏永久显示串口号、波特率。状态栏的自身的方法无法让信息长久保留,但是我们可以为状态栏永久添加小控件

QStatusBar添加删除小控件的方法:


方法


描述

addPermanentWidget() 在状态栏中永久添加给定的窗口小控件对象
removeWidget() 从状态栏中移除指定的小控件

实例代码如下:

import sys
from PyQt5.QtWidgets import *

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

 def initUi(self):
  self.resize(500, 500)

  self.status = self.statusBar()
  self.status.showMessage('实时更新的信息', 0) #状态栏本身显示的信息 第二个参数是信息停留的时间,单位是毫秒,默认是0(0表示在下一个操作来临前一直显示)
  self.comNum = QLabel('串口号:')
  self.baudNum = QLabel('波特率:')

  self.status.addPermanentWidget(self.comNum, stretch=0)
  self.status.addPermanentWidget(self.baudNum, stretch=0)

if __name__ == '__main__':
 app = QApplication(sys.argv)
 Win = windows()
 Win.show()
 sys.exit(app.exec_())

运行后的窗口:

补充:

self.status.addPermanentWidget(self.comNum, stretch=0)
self.status.addPermanentWidget(self.baudNum, stretch=0)
#这两句的stretch是设置拉伸因子

如果把stretch作如下修改

self.status.addPermanentWidget(self.comNum, stretch=3)
self.status.addPermanentWidget(self.baudNum, stretch=1)
#这里两个控件会按3:1的比例放置在状态栏里

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。

(0)

相关推荐

  • python3.x+pyqt5实现主窗口状态栏里(嵌入)显示进度条功能

    1.代码1: (1)进度条等显示在主窗口状态栏的右端,代码如下: from PyQt5.QtWidgets import QMainWindow, QProgressBar, QApplication, QLabel import sys class SampleBar(QMainWindow): """Main Application""" def __init__(self, parent = None): print('Starting t

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

    PyQt5状态栏控件QStatusBar简介 MainWindow对象在底部保留有一个水平条,作为状态栏(QstatusBar),用于显示永久或临时的状态信息 QStatusBar类中的常用方法 方法 描述 addWidget() 在状态栏中添加给定的窗口小控件对象 addPermanentWidget() 在状态栏中永久添加给定的窗口小控件对象 showMessage() 在状态栏显示一条临时信息,指定时间间隔 clearMessage() 删除正在显示的临时信息 removeWidget()

  • Qt5 实现主窗口状态栏显示时间

    使用Qt Creator创建默认的窗体程序后,主窗口QMainWindow有statusBar状态栏,在此状态栏实时显示时间可以使用下面方法实现: mainwindow.h文件内容: #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QMainWindow> #include <mydialog.h> #include <QLabel> namespace Ui { class MainWindow; } class

  • PyQt5 实现状态栏永久显示消息

    前言: 课程设计打算用qt和python做一个上位机,现在的需求是要在状态栏永久显示串口号.波特率.状态栏的自身的方法无法让信息长久保留,但是我们可以为状态栏永久添加小控件 QStatusBar添加删除小控件的方法: 方法 描述 addPermanentWidget() 在状态栏中永久添加给定的窗口小控件对象 removeWidget() 从状态栏中移除指定的小控件 实例代码如下: import sys from PyQt5.QtWidgets import * class windows(QM

  • 基于PyQt5实现状态栏(statusBar)显示和隐藏功能

    首先,讲述要解决的两个问题以及解决问题的代码: 1.将鼠标放置于菜单栏上状态栏永久消失的问题(这个问题需要仔细观察才能注意到) # 此覆盖父类函数: 覆盖方法: 为了克服 将鼠标放置于菜单栏上 状态栏就消失的问题: def event(self, QEvent): if QEvent.type() == QEvent.StatusTip: if QEvent.tip() == "": QEvent = QStatusTipEvent("ready!") # 此处为要

  • Android使用Notification在状态栏上显示通知

    在使用手机时,当有未接来电或者是新短消息时,手机会给出相应的提示信息,这些提示信息通常会显示到手机屏幕的状态栏上.Android也提供了用于处理此类信息的类,他们是Notification和NotificationManager.其中,Notification代表的是具有全局效果的通知:而NotificationManager则是用于发送Notification通知的系统服务. 使用Notification和NotificationManager类发送和显示通知也比较简单,大致可分为以下4个步骤

  • python3+pyqt5+itchat微信定时发送消息的方法

    编这个程序是想过节过年,一些重要的纪念日,给亲戚好友发祝福之类的,但要凌晨0点才显得比较有诚意,可我又比较贪睡,常常忘了,所以就有了编个微信定时发送消息小程序. 运行环境: python 3.x,不支持python2 准备工作 由于我用到了微信的接口,所以引入itchat 界面用了pyqt5 安装命令如下: pip install PyQt5 pip install itchat 代码部分 # -*- coding: utf-8 -*- # @Time : 2018/9/25 11:06 # @

  • iOS在状态栏上显示提醒信息的功能定制

    先看效果图 实现这个效果,用到了JDStatusBarNotification,这是一个易于使用和定制的在状态栏上显示提醒信息的控件,可自定义颜色.字体以及动画,支持进度条展示,并可以显示活动指示器. 假设这么一个场景,需要调接口修改个人资料,这时有3个状态,正在修改.修改成功.修改失败.我们可以写一个公共类,方便调用,譬如 NSObject+Common. .h文件写方法 #import <Foundation/Foundation.h> @interface NSObject (Commo

  • Android开发中Toast显示消息的方法小结

    本文实例总结了Android开发中Toast显示消息的方法.分享给大家供大家参考,具体如下: Android中提供一种简单的Toast消息提示框机制,可以在用户点击了某些按钮后,提示用户一些信息,提示的信息不能被用户点击,Toast的提示信息根据用户设置的显示时间后自动消失.Toast的提示信息可以在调试程序的时候方便的显示某些想显示的东西. 两种方法创建Toast 第一种方法的Java代码: makeText(Context context, int resId, int duration)

  • jquery自定义显示消息数量

    本文实例为大家分享了jquery自定义显示消息数量展示的具体代码,供大家参考,具体内容如下 根据需求简单的实现一个小功能控件,暂时不支持扩展. $("xxxxxxx").iconCountPlugin(options, start, isOffset) { //三个参数,自定义样式,是否禁止图标位置随浏览器窗口变化而变化,是否禁用偏移量 这个是调用,后面俩参数可以根据需求自行进行调整,以兼容不同的浏览器,可能因为浏览器之间的差异导致出一些意想不到的错误. 复制代码 ; (functio

  • Android使用Toast显示消息提示框

    在前面的实例中,已经应用过Toast类来显示一个简单的提示框了.这次将对Toast进行详细介绍.Toast类用于在屏幕中显示一个消息提示框,该消息提示框没有任何控制按钮,并且不会获得焦点,经过一段时间后自动消失.通常用于显示一些快速提示信息,应用范围非常广泛. 使用Toast来显示消息提示框非常简单,只需要一下三个步骤: (1).创建一个Toast对象.通常有两种方法:一种是使用构造方式进行创建: Toast toast=new Toast(this); 另一种是调用Toast类的makeTex

  • iOS状态栏的显示与隐藏的示例代码

    今天设计师跑来问iOS状态栏的问题,由于之前没有整理,只能"我确认下给你回复",确认得有点久,略尴尬...好记性不如烂笔头,希望能养成整理做笔记的好习惯.那么,闲话少说, 让我们进入正题. 我们使用xcode新建一个 iOS工程 ,默认情况下状态栏是显示的. 隐藏某个控制器的状态栏 最简单地隐藏方法就是使用下面这段代码: - (BOOL)prefersStatusBarHidden { returnYES; } 全局隐藏状态栏 上面代码确实隐藏了对应控制器的状态栏,但是多数情况下我们的

  • C# WinForm状态栏实时显示当前时间(窗体状态栏StatusStrip示例)

    本文主要介绍了C# WinForm状态栏实时显示当前时间(窗体状态栏StatusStrip示例),分享给大家,具体如下: 实现效果:通过StatusStrip显示窗体状态栏,同时将状态栏分成三部分: 居左边显示相关文字信息及时间信息,中间操作系统登录名,居右边显示本地IP. 步骤: 1.创建窗体及添加StatusStrip 默认StatusStrip名称为statusStrip1 2.在statusStrip1的Items属性中 添加三个StatusLabel 默认名称为toolStripSta

随机推荐