刚开始编写的设置背景色代码用的是QPalette类:
1 QPalette palette1=ui->pushButton->palette(); 2 palette1.setColor(QPalette::ButtonText,Qt::red);//设置字体颜色为红色 3 palette1.setColor(QPalette::Button,Qt::green);//设置背景颜色为绿色 4 ui->pushButton->setPalette(palette1);
运行结果:按钮背景色还是默认的,palette1.setColor(QPalette::Button,Qt::green);不起作用;
在设计界面palette属性中进行设置的结果也不起作用。
在网上查找原因:
在windows中QPushButton的颜色涉及到样式表,所以应该设置样式表才可以,可以使用一下代码进行更改:
ui->TH_2->setStyleSheet("background-color: rgb(170, 0, 255);");
或者在设计界面属性中的stylesheet属性中进行设置。
windows下其他的控件,两种方法都可以。
标签:设置,QPalette,QPushButton,背景色,palette1,Qt From: https://www.cnblogs.com/ybqjymy/p/18026825