Qt 中 QLabel 自定义文本的颜色状态,设置为三种状态(类似于Qcheckbutton里面的checked unchecked)

本文介绍如何在Qt中自定义QLabel的文本颜色状态,模仿QCheckButton的checked和unchecked状态。通过QSS样式表设置,并在main.cpp中合适位置读取,实现颜色状态的切换,使用时只需调用相应语句即可。
摘要由CSDN通过智能技术生成

1  自定义设置Qlabel文本颜色状态。 别的类可以进行类推

 

#ifndef QCOMPLEXLABEL_H
#define QCOMPLEXLABEL_H

#include <QObject>
#include <QWidget>
#include <QLabel>

class QComplexLabel : public QLabel
{
    Q_OBJECT

    Q_PROPERTY(QColor normalColor READ normalColor WRITE setNormalColor)
    Q_PROPERTY(QColor errorColor READ errorColor WRITE setErrorColor)
    Q_PROPERTY(QColor unknownColor READ unknownColor WRITE setUnknownColor)

public:
    QComplexLabel(QWidget *parent = 0);

    enum LabelState{
        Normal = 0x00,
        Error = 0x01,
        Unknown = 0x02
    };

    void setNormalColor(const QColor  &newColor) { m_normalColor = newColor; }
    QColor normalColor() const { return m_normalColor; }

    void setErrorColor(const QColor  &newColor) { m_errorColor = newColor; }
    QColor errorColor() const { return m_errorColor; }

    void setUnknownColor(const QColor  &newColor) { m_unkn
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值