修改QLabel的文本大小/颜色/背景颜色,使用QSS/QColor转换为QString的方法

简介: 修改QLabel的文本大小/颜色/背景颜色,使用QSS/QColor转换为QString的方法

源码实现:


QString foreground = TOOLBOX.qColor2qString(forecolor);
QString background = TOOLBOX.qColor2qString(backcolor);
//eg."QLabel{color:rgb(255,0,0);background-color:rgb(200,101,102);}"
QString qss = QString("QLabel{color:%1;background-color:%2;font:13pt}").arg(foreground).arg(background);
ui->label_systemstatus->setStyleSheet(qss);


转换方法:


QString CToolBox::qColor2qString(const QColor &color, const QString &type)
{
    if (type == "RGBA")
    {
        return QString("rgba(%1,%2,%3,%4)")
            .arg(color.red())
            .arg(color.green())
            .arg(color.blue())
            .arg(color.alpha());
    }
    else if (type == "RGB")
    {
        return QString("rgb(%1,%2,%3)")
            .arg(color.red())
            .arg(color.green())
            .arg(color.blue());
    }
    else if (type == "HEX")
    {
        return QString().sprintf("#%1%02X%02X%02X",
                                 color.red(),
                                 color.green(),
                                 color.blue())
            .arg(color.alpha() != 255 ? QString().sprintf("%02X", color.alpha()) : QString());
    }
    return color.name();
}

 


相关文章
|
6月前
Qt之使用图片填充QLabel
Qt之使用图片填充QLabel
284 1
|
数据安全/隐私保护
Qt之标签和单行文本编辑框(QLabel、QLineEdit)
Qt之标签和单行文本编辑框(QLabel、QLineEdit)
226 0
|
Web App开发 索引
Qt之QTableView显示富文本
简述 对于QTableView中的显示,我们前面介绍过很多种,其中包括:文本、进度条、复选框等,今天我们介绍一下关于富文本的显示。 可能绝大多数小伙伴会通过QAbstractTableModel中的data来实现,可是现实告诉我们,那是行不通的,那么我们如何去显示呢?请看正文。 简述 效果 源码 分析 效果 源码 下面我们使用QAbstrac
1044 0
|
程序员 API iOS开发
iOS开发:字符串设置指定内容的文字颜色、文字大小、文字字体类型
在iOS开发过程中,会有一些为了提高APP的视觉效果而设置的特别一点的效果,比如一行文字需要自定义不同的颜色和文字大小,这就用到通过富文本来设置字符串的颜色、大小和文字类型。这篇博文我打算只介绍怎么设置指定内容的一些文字属性设置,如果之前看过我写的博文,就会发现有一篇类似介绍通过富文本来设置字符串内容的博文,但是那篇是综合性的,包括介绍button的,以及UItextfield的设置,所以在这里我只介绍怎么设置字符串指定位置的一些自定义设置的方法,如有不妥之处,欢迎指正。
609 0
如何让QComboBox控件下拉框自适应文字宽度?
如何让QComboBox控件下拉框自适应文字宽度?
1148 0