本文主要是介绍Qt QPushButton 按钮右上角增加小红点,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
简述
在项目里有时候应用类按钮在模块上新时,需要增加小红点提示。
效果图:
实现
实现的方法有很多 ,下面介绍超简单的一种。
直接在按钮上贴一个 QLabel 即可。
#pragma once#include <QtWidgets/QWidget>
#include "ui_pafeyDemo.h"
#include <QLabel>class pafeyDemo : public QWidget
{Q_OBJECTpublic: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 是需要添加小红点的按钮。可以动态显示隐藏。
注:我这里的小红点用的图片资源。
这篇关于Qt QPushButton 按钮右上角增加小红点的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!