当前位置: 代码迷 >> QT开发 >> 怎么改变QPushButton的背景颜色!
  详细解决方案

怎么改变QPushButton的背景颜色!

热度:117   发布时间:2016-04-25 05:03:00.0
如何改变QPushButton的背景颜色!!!
如下是我的实现代码,请各位帮忙看一下,为什么选择颜色后,QPushButton的背景颜色不变(环境为Win)!
C/C++ code
void MyDilog::OnButtonSelectColor(){        QColorDialog *colorDlg = new QColorDialog;    colorDlg->setModal(true);    if ( colorDlg->exec() != QDialog::Accepted)        return;    QPalette   pal   =   IDC_BUTTON_Color->palette();     QColor _color    = colorDlg->currentColor();        pal.setColor(QPalette::Button,_color);    IDC_BUTTON_Color->setPalette(pal);}

将其中
pal.setColor(QPalette::Button,_color);
改为
pal.setColor(QPalette::ButtonText,_color);时QPushButton的text颜色会变!

请各位帮忙指点一下! 先谢过啦!


------解决方案--------------------
将QPushButton的这个属性值改一下:
C/C++ code
setAutoFillBackground(true);
------解决方案--------------------

IDC_BUTTON_Color->setPalette(pal);

改成
IDC_BUTTON_Color->setStyleSheet(QString("background-color:%1").arg(_color.name()));

即可~``