【Qt】状态栏

news2024/11/23 22:43:25

目录

一.状态栏

1.简述状态栏

二.QStatusBar

1.概念

2.QStatusBar的属性

3.QStatusBar常用成员函数

三.代码创建状态栏

1.创建状态栏

2.在状态栏上显示实时信息

3.在状态栏上显示永久信息(通过label)

4.在状态栏中创建进度条


一.状态栏

1.简述状态栏

状态栏是应⽤程序中输出简要信息的区域。⼀般位于主窗⼝的最底部,⼀个窗⼝中最多只能有⼀个状态栏。在 Qt 中,状态栏是通过 QStatusBar类 来实现的。

在状态栏中可以显⽰的消息类型有:

  • 实时消息:如当前程序状态
  • 永久消息:如程序版本号,机构名称
  • 进度消息:如进度条提⽰,百分百提⽰

二.QStatusBar

1.概念

QStatusBar是Qt框架为了实现状态栏提供的类,用于在应用程序窗口底部显示状态信息。它可以显示一些固定的文本和图标,并且可以通过API动态更新显示内容。

2.QStatusBar的属性

属性说明
currentMessage当前显示的文本消息。
可以使用setCurrentMessage()方法来设置。
sizeGripEnabled是否显示大小调整控件。
默认情况下,状态栏右侧会显示一个大小调整的小部件,可以通过设置该属性为false来隐藏它。
visible状态栏的可见性。
可以使用setVisible()方法来设置状态栏的可见性。
count状态栏当前显示的小部件数量。
可以通过addWidget()方法添加小部件,并通过removeWidget()方法移除小部件。
maximumHeight状态栏的最大高度。
可以使用setMaximumHeight()方法设置状态栏的最大高度。

3.QStatusBar常用成员函数

API说明
showMessage()显示一条文本消息。可以指定消息内容、显示时间和消息类型(例如,临时消息或永久消息)。
clearMessage()清除当前显示的消息。
addWidget()添加一个小部件到状态栏。可以添加QLabel、QProgressBar等小部件。
removeWidget()移除状态栏上的指定小部件。
insertWidget()在指定位置插入一个小部件到状态栏。
setStyleSheet()设置状态栏的样式表。
setSizeGripEnabled()设置是否显示大小调整控件。
setVisible()设置状态栏的可见性。
heightForWidth()根据宽度计算状态栏的高度。

三.代码创建状态栏

1.创建状态栏

状态栏的创建是通过 QMainWindow 类提供的 statusBar()函数来创建;⽰例如下:

//创建状态栏
    QStatusBar* sta=statusBar();
     //将状态栏设置到窗口上
    this->setStatusBar(sta);

2.在状态栏上显示实时信息

 // 在状态栏显示信息20s
    sta->showMessage("hello Qt",6000);

运行结果:

3.在状态栏上显示永久信息(通过label)

//创建标签
    QLabel* label=new QLabel("Progress bar");

    //将标签设置到状态栏中 来永久显示信息
    sta->addWidget(label);

    //创建另一个标签,放置于右侧
    QLabel* label2=new QLabel("Prompt message _ right");
    sta->addPermanentWidget(label2);

运行结果:

4.在状态栏中创建进度条

 //创建进度条
    QProgressBar* progressbar=new QProgressBar();
    //设置进度条范围
    progressbar->setRange(0,100);
    //设置进度条样式
    progressbar->setStyleSheet("QProgressBar::chunk{border-radius:5px;background:blue}");

    //设置进度条初值
     progressbar->setValue(50);
    //设置进度条到窗口
    sta->addWidget(progressbar);

运行结果:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1986705.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

用OpenCV与MFC写一个简单易用的图像处理程序

工厂里做SOP及测试报告以及员工资格鉴定等常需用到简单的图像处理,PS等软件正版费用不菲,学习起来成本也高。Windows自带的图像处理软件,用起来也不是那么得心应手。因此我用OpenCV与MFC写了一个简单易用的图像处理程序。 程序界面 基于简单…

书生大模型学习笔记1 - 连接云端开发机

申请InternStudio开发机: 这里进去报名参加实战营即可获取 书生大模型实战营 InternStudio平台 创建开发机 SSH连接开发机: SSH免密码登录 本地创建SSH密钥 ssh-keygen -t rsa打开以下文件获取公钥 ~/.ssh/id_rsa.pub去InternStudio添加公钥 …

【iOS】—— autoreleasePool以及总结

autoreleasePool以及总结 1. 什么是autoreleasePool2. autoreleasePoolPageobjc_autoreleasePoolPush方法:objc_autoreleasePoolPop方法:tokenkill()方法 3. 总结3.1 autoreleasePool的原理3.2 autoreleasePool的问题3.2.1 autoreleasepool的嵌套操作3.2…

进程学习

今天开始了进程的学习,主要讲了进程的一些命令以及进程的创建、进程的调度、进程相关的函数接口和进程消亡。在函数接口中要注意子进程和父进程的关系以及回收顺序,避免出现僵尸进程。

C基础练习(学生管理系统)

1.系统运行,打开如下界面。列出系统帮助菜单(即命令菜单),提示输入命令 2.开始时还没有录入成绩,所以输入命令 L 也无法列出成绩。应提示“成绩表为空!请先使用命令 T 录入学生成绩。” 同理,当…

【为什么不要买运营商的机顶盒?解锁智能电视新体验,从一台刷机机顶盒开始】

【置顶:机顶盒刷机步骤请跳转此链接】 在这个数字化飞速发展的时代,电视早已不再是单一的播放工具,它正逐步演变成为家庭娱乐与信息获取的综合中心。然而,许多家庭在选择机顶盒时,往往会因为惯性或便利而直接选择运营商提供的机顶…

基于Tasking编译器AURIX TC3xxDemo工程创建

1、示例代码获取 1.1 英飞凌AURIX系列示例代码路径 Infineon/AURIX_code_examples: This repository contains code example projects for the AURIX™ Development Studio. (github.com) 1.2 代码获取 源代码获取有两种方式,一种通过git拉到本地仓库&#xff0…

修改微信(3.9.10.19版本)系统托盘图标(傻瓜教程)

微信版本: 进行以下操作先退出微信 1.iconfont Logo下载一个图标png,大小为256像素,前面颜色自己看着弄 2.png转ico,转化链接(转化的网站很多不一定非要是这个) 3.下载后续所需程序(ResHacker和IconWo…

【动态规划】力扣918. 环形子数组的最大和

给定一个长度为 n 的环形整数数组 nums ,返回 nums 的非空 子数组 的最大可能和 。 环形数组 意味着数组的末端将会与开头相连呈环状。形式上, nums[i] 的下一个元素是 nums[(i 1) % n] , nums[i] 的前一个元素是 nums[(i - 1 n) % n] 。 …

Jmeter性能压测4000并发

性能测试的底层逻辑 程序为什么会有性能问题 用户操作 客户端(web/app/小程序)触发网络请求,服务器处理大量网络请求代码运行需要大量服务器资源(CPU、内存、网络、磁盘等等) 资源不是无限,硬件配置不是随…

python-分享篇-英文短文自动分词写入文本文件

文章目录 准备代码效果 准备 代码 import string f open(./data/split.txt) sf.read() str1s.title() print(str1) print("".join([s for s in str1.splitlines(True) if s.strip()])) list1 str1.split() # 采用默认分隔符进行分割 #字符串列表去重 l1list(set(l…

lvs的dr模式综合实践

目录 ​编辑虚拟机准备工作 ​编辑​编辑​编辑 配置过程 配置client主机 配置router主机 配置lvs主机(vip使用环回来创建) 配置server1主机(vip使用环回来创建) 配置server2主机(vip使用环回来创建&#xff0…

SpringBoot+Mybatis 分页

无论多数据源,还是单数据源,分页都一样,刚开始出了点错,是因为PageHelper的版本问题 这里用的SpringBoot3 SpringBoot2应该是没有问题的 相关代码 dynamic-datasourceMybatis多数据源使用-CSDN博客 依赖 <?xml version"1.0" encoding"UTF-8"?&g…

Maven+Tomcat环境搭建

Maven Maven框架的作用 1.在JavaWeb开发中需要使用大量的jar包,这些jar包需要手动导入 2.自动导入和配置jar包 Maven项目架构管理工具 方便导入jar包 Maven的核心思想:约定大于配置 有约束不要去违反 Maven会规定好你该如何去编写java代码,必须按照规范来 安装流程 1…

Godot学习笔记8——PONG游戏制作

目录 一、小球 二、地图 三、积分系统 四、玩家场景 五、导出与发布 PONG是1972年由雅达利公司推出的游戏&#xff0c;主要玩法为玩家控制两个可以上下移动的板子击打屏幕中不断运动的球 一、小球 我们首先创建一个“Area2D”场景&#xff0c;在它下方创建“Collisi…

好书推荐|复旦大学专家团队著《大规模语言模型:从理论到实践》(附PDF)

前言 在这个迅猛发展且复杂多变的技术领域&#xff0c;掌握大型模型的理论核心并有效地将其应用于实践&#xff0c;对许多人来说是一项艰巨的任务。为此&#xff0c;《大规模语言模型&#xff1a;从理论到实践》一书应运而生。本书由复旦大学计算机科学技术学院知名教授张奇领…

将增强型乳腺摄影添加到断层合成中用于有乳腺癌个人病史女性的乳腺癌检测:| 文献速递-基于深度学习的乳房、前列腺疾病诊断系统

Title 题目 Addition of Contrast-enhanced Mammography to Tomosynthesis for Breast Cancer Detection in Women with a Personal History of Breast Cancer: 将增强型乳腺摄影添加到断层合成中用于有乳腺癌个人病史女性的乳腺癌检测&#xff1a; Background 背景 Dig…

【黄啊码】什么是SD?SD的使用技巧

目录 SD的简介 SD的优势 1、不需要绘画基础&#xff0c;便能绘制精美的图片&#xff0c;插画 2、StableDiffusion不仅用于静态图像生成&#xff0c;还可应用于动态图像和视频创作&#xff0c;拓宽了AI绘画的应用领域。 3、快速发展&#xff0c;成熟的社区——帮助使用者…

Linux系统 腾讯云服务/宝塔面板安装《最新版本2024》禅道开源版本20.2

文章目录 目录 文章目录 安装流程 小结 概要安装流程技术细节小结 概要 有两种方式1.自带有服务器安装和2.使用禅道官方的服务器免费使用 第一种&#xff1a;免费的提供5人使用&#xff0c;存储的数据大小也是有限制的范围的 禅道下载 - 禅道项目管理软件 下滑页面就能…

大事件前端篇JavaScript导入导出

前置知识&#xff1a; 呃呃呃......有那么一点点&#xff1f;&#xff1f;但不多。。。。不管&#xff0c;先学&#xff0c;不会的时候再去看响应的知识点吧。 补充一个模块化相关的知识点&#xff1a;JavaScript-导入导出 JS提供的导入导出机制&#xff0c;可以实现按需导…