1.在程序中,修改QLabel的背景颜色:
在UI设计中添加的QLabel qlabel;
QPalette palette;
palette.setColor(QPalette::Background, QColor(0, 255, 0));
qlabel->setAutoFillBackground(true); //一定要这句,否则不行
qlabel->setPalette(palette);
2.在程序中,修改Push Button的背景颜色:
在UI设计中添加的Button btn;
QPalette palette_btn;
palette.setColor(QPalette::Button, QColor(0, 255, 0));
btn->setAutoFillBackground(true);
btn->setPalette(palette_btn);
这时,背景已经设置成绿色,但是QPushButton会自动画一个自然边框,正好覆盖了BUTTON的绘制RECT,背景被遮住了,所以用setFlat(true),将绿色背景显示出来。需要添加下面一句:
btn->setFlat(true); //应该设置为flat
做个小笔记,备忘。