Qt QPushButton 按钮右上角增加小红点

news2024/11/13 14:50:17

简述

在项目里有时候应用类按钮在模块上新时,需要增加小红点提示。

效果图:

实现

实现的方法有很多 ,下面介绍超简单的一种。

直接在按钮上贴一个 QLabel 即可。

#pragma once

#include <QtWidgets/QWidget>
#include "ui_pafeyDemo.h"
#include <QLabel>

class pafeyDemo : public QWidget
{
	Q_OBJECT

public:
	pafeyDemo(QWidget *parent = Q_NULLPTR);

private:
	Ui::pafeyDemoClass ui;

	QLabel *m_pLabelToolRed;
};
#include "pafeyDemo.h"

pafeyDemo::pafeyDemo(QWidget *parent)
	: QWidget(parent)
{
	ui.setupUi(this);
	m_pLabelToolRed = 0;

	connect(ui.pushButtonShow,&QPushButton::clicked,this, [=](){
		if (0 == m_pLabelToolRed)
		{
			m_pLabelToolRed = new QLabel(ui.btTool);
			m_pLabelToolRed->setObjectName("btToolNew"); // 设置子控件的对象名
			m_pLabelToolRed->setFixedSize(8, 8); // 设置小圆点大小 
			m_pLabelToolRed->setStyleSheet("background-color: rgba(255, 255, 255, 0);border-image: url(:/pafeyDemo/Resources/bar/bar_new.png);"); // 设置小圆点样式 
			m_pLabelToolRed->move(ui.btTool->width() - 8, 0); // 将小圆点移动到右上角 
		}
		m_pLabelToolRed->show();
	});
	connect(ui.pushButtonHide, &QPushButton::clicked, this, [=]() {
		m_pLabelToolRed->hide();
	});
}

ui.btTool 是需要添加小红点的按钮。可以动态显示隐藏。

注:我这里的小红点用的图片资源。 

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

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

相关文章

宁武县乡村e镇招商引资暨产品推介会在京举办

2024年8月26日&#xff0c;宁武县乡村e镇招商引资暨产品推介会在北京市朝阳区五洲皇冠国际酒店举办。此次活动由山西省宁武县委、县政府主办&#xff0c;中国联合国采购促进会、中国商业文化研究会乡村振兴工作委员会协办&#xff0c;旨在宣传推介宁武县丰富的自然资源和农特产…

“1X”家用人形机器人:NEO Beta人形机器人,专为家庭使用而设计

1X机器人是指挪威人形机器人初创企业1X公司推出的一款名为NEO Beta的双足人形机器人原型。这款机器人专为家庭使用而设计&#xff0c;身高约1米65&#xff0c;体重30公斤&#xff0c;具有仿生设计&#xff0c;能够在人与人之间安全工作。NEO Beta采用了OpenAI的技术支持&#x…

spotbugs问题描述汉化

1 支持多语言 spotbugs自身支持问题描述的国际化&#xff0c;默认支持了英语、日语和法语。 问题描述都配置在messages.xml文件中。 (在源码中的位置&#xff1a;/spotbugs//spotbugs/etc/messages.xml) 2 多语言文件名 如果需要支持中文可以将messages.xml中的英文翻译过来。将…

Chapter 08 Vue生命周期

欢迎大家订阅【Vue2Vue3】入门到实践 专栏&#xff0c;开启你的 Vue 学习之旅&#xff01; 文章目录 前言一、生命周期阶段二、生命周期钩子三、生命周期图示 前言 Vue.js 是一个渐进式的 JavaScript 框架&#xff0c;广泛用于构建用户界面。理解 Vue 的生命周期对于开发高效、…

基于springboot+vue的在线商城系统

基于springbootvue的商城系统 (源码L文ppt)4-056 4 系统设计 4.1 系统功能模块设计 经过分析本系统的实际需求&#xff0c;系统主要分为三个模块&#xff0c;用户、商家以及管理员&#xff0c;具体的功能模块如图4-1所示&#xff1a; 图4-1 功能模块设计图 4.2…

超声波清洗机什么牌子值得入手?好用的超声波清洗机推荐

即便身处快节奏的工作环境中&#xff0c;我们仍需重视个人卫生及日常用品的清洁维护&#xff0c;这不仅是生活质量的体现&#xff0c;更是关乎健康的基本原则。长期忽视清洁&#xff0c;灰尘积累则可能成为细菌滋生的温床&#xff0c;进而悄悄威胁我们的身体健康。因此&#xf…

使用BDT利率二叉树模型来计算期权的初始价值

Black-Derman-Toy (BDT) 模型是于1990年开发的一种用于金融市场的利率模型。这个模型是一个单因子短期利率模型&#xff0c;它假设利率遵循一个均值回归过程&#xff0c;即利率随时间趋向于回归到长期平均值。 BDT模型的关键特点包括&#xff1a; 它能够校准到初始的利率期限…

09-02 周一 Ubuntu上使用docker-compose部署elasticsearch和kibana服务

09-02 周一 Ubuntu上部署elasticsearch和kibana服务 时间版本修改人描述2024年9月2日11:13:54V0.1宋全恒新建文档 简介 由于组里需要提供一个简易的环境来部署一套服务&#xff0c;可以通过接口进行数据的存储和检索&#xff0c;因此&#xff0c;直接部署一套ES服务来充当这样…

[Linux网络]TCP三次握手和四次挥手的连接建立和断开

TCP的三次握手 第一次握手&#xff1a;客户端发送网络包&#xff0c;服务器端收到&#xff0c;证明客户端的发送能力、服务器的接收能力是正常的。第二次握手&#xff1a;服务器发送网络包&#xff0c;客户端收到&#xff0c;证明服务器端的发送能力是正常的&#xff0c;不过此…

每日一题,零基础入门FPGA——工程师在线精讲,直播预告

题目传送门&#xff1a;F学社 zzfpga.com/StudentPlatform/Sheet/QuestionBankhttp://zzfpga.com/StudentPlatform/Sheet/QuestionBank 【第Ⅰ期题目 * 5】 请使用D触发器和必要的逻辑门实现此同步时序电路&#xff0c;用Verilog语言描述。 【第Ⅰ期题目 * 4】 请设计一个0…

合宙低功耗4G模组Air780EP——产品规格书

Air780EP作为合宙通信推出的LTE Cat. 1 bis通信模块&#xff0c;基于移芯EC718P平台&#xff0c; 支持LTE 3GPP Release 14技术&#xff0c;确保数据传输的高效性和稳定性。 作为4G全网通模块&#xff0c;兼容各大运营商网络&#xff0c;提供广泛的网络覆盖和灵活性。 作为4…

驱动开发系列14 - Linux Graphics Wayland 详解

目录 一:概述 二:操作系统如何支持 Wayland 三:显卡驱动如何支持 Wayland 四:Wayland 协议介绍 一:概述 Wayland 是一种通信协议,规定了显示服务器与其客户端之间的通信,以及该协议的 C 语言库实现。使用 Wayland 协议的显示服务器称为 Wayland 合成器,因…

为什么单元测试在软件开发中很重要?

单元测试在软件开发过程中扮演着至关重要的角色&#xff0c;其重要性主要体现在以下几个方面&#xff1a; 保证代码质量&#xff1a;单元测试是对软件中的最小可测试单元——函数、方法或类进行检查和验证的过程。通过编写针对各个模块的独立测试用例&#xff0c;开发者能够确…

Python进阶之-加密库cryptography使用详解

✨前言 cryptography 库是一个强大的 Python 加密库&#xff0c;提供了对加密算法和协议的高层和低层访问。它是用来实现数据加密、签名、密钥管理等功能的。以下是一些常见用法的详解&#xff0c;帮助你理解如何使用这个库。 ✨安装 首先&#xff0c;你需要确保安装了 cryp…

经纬恒润半年报:净亏损超3亿元,研发支出增长/毛利下降

作为近年来为数不多成功IPO上市的汽车智能网联概念股&#xff0c;经纬恒润正处于「研发支出增长、毛利率下降」的阵痛期。这也反映出当下产业链的共性困难&#xff0c;车企降本、供应链白热化竞争。 本周&#xff0c;经纬恒润&#xff08;688326&#xff09;发布2024年半年报&a…

怎么才能快速提升网站在谷歌的收录?

​想让你的网站在谷歌快速收录&#xff0c;其实正常的方法都需要时间&#xff0c;无论是定期更新&#xff0c;提交网站地图&#xff0c;搞外链建设啥的&#xff0c;这些方法虽然有效&#xff0c;但见效慢。而且谷歌爬虫不会一下子抓取你所有页面&#xff0c;需要时间。如果真想…

鸿蒙Promise是什么?怎么用?面试遇到如何回答?Promise静态方法有那些?

#什么是Promise&#xff1f; Promise是用来管理异步操作的对象&#xff0c;可以获取成功&#xff08;或失败&#xff09;的结果 #Promise的状态&#xff1f; Promise 必然处于 3 种状态中的某一种&#xff0c;调用resolve,reject 的本质就是更改他的状态 3 种状态: 1. 待定&am…

Lazada商家必看:如何高效利用自养号进行产品测评

Lazada自养号测评技术是一种电商运营策略&#xff0c;通过卖家自己创建和管理买家账号&#xff0c;以模拟真实的买家行为&#xff08;如浏览、收藏、加购和下单等&#xff09;&#xff0c;从而提高产品的排名、权重和销量。以下是对Lazada自养号测评技术的详细解析&#xff1a;…

一文搞懂 JavaScript 模块化规范:CommonJS、AMD、ES6 Module

&#x1f525; 个人主页&#xff1a;空白诗 文章目录 一、为什么需要模块化&#xff1f;二、早期的模块化标准2.1 CommonJS 规范2.1.1 CommonJS 简介2.1.2 CommonJS 的特性2.1.3 CommonJS 的使用示例2.1.4 CommonJS 可能出现的问题 2.2. AMD 规范2.2.1 AMD 简介2.2.2 AMD 的特性…

速度与激情:荣耀100 GT携第三代骁龙8来袭,性能爆表

在智能手机市场&#xff0c;荣耀品牌以其独特的设计理念和创新技术赢得了众多消费者的喜爱。 随着荣耀100 GT预计将在年底登场的消息曝光&#xff0c;这款作为荣耀90 GT迭代更新款的智能手机&#xff0c;无疑将成为市场上的一大亮点。从外观设计到性能配置&#xff0c;荣耀100…