QT -- 改变QLabel背景颜色

在桌面应用程序开发时,需要显示一些状态信息,例如客户端是否掉线,串口是否打开等,我们可以用一些标志显示给用户,例如如果QLabel显示绿色,表示连接成功,显示黑色表示失败。

方法一:使用Qt调色板,代码如下:

 ui.label_Status->clear();
 QPalette palette;
 ui.label_Status->clear();
 QPalette palette;
 palette.setColor(QPalette::Background, QColor(R, G, B));
 ui.label_Status->setAutoFillBackground(true);  //一定要这句,否则不行
 ****ui.label_Status->setPalette(palette);

只要改变R,G,B的值即可实现各种颜色,例如(0, 255, 0)是绿色,(0, 0, 0)是黑色。

方法二:使用Qt样式表,qss语法直接修改

 ui->label->setText(""); //清空字体
 ui->label->setStyleSheet("QLabel{background-color:rgb(200,101,102);}");  //设置样式表

效果如下:

修改颜色rgb()值即可显示不同颜色,rgb值大家可以自己搜索设置,在设置之前,把label文本清空。上述颜色如下:

注意:qss语句别写错了,写错了可能样式不会改变,但也不报错。

建议使用第二种方法,代码少,容易使用。

https://blog.csdn.net/yao_hou/article/details/80814664

原文地址:https://www.cnblogs.com/zzzsj/p/14250175.html