QT对颜色设置改变比较大
用QPalette设置
给个例子
QPalette palette;
palette.setColor(QPalette::All, static_cast<QPalette::ColorRole>(1), QColor(255, 0, 0));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(2), QColor(0, 0, 0));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(3), QColor(0, 0, 0));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(4), QColor(255, 255, 255));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(5), QColor(0, 0, 0));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(6), QColor(0, 0, 0));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(7), QColor(255, 255, 255));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(8), QColor(0, 0, 0));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(9), QColor(212, 208, 200));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(10), QColor(212, 208, 200));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(11), QColor(0, 0, 0));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(12), QColor(10, 36, 106));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(13), QColor(255, 255, 255));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(14), QColor(0, 0, 255));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(15), QColor(255, 0, 255));
palette.setColor(QPalette::Disabled, static_cast<QPalette::ColorRole>(16), QColor(233, 231, 227));
ui.pushButton->setPalette(palette);
ui.pushButton->setText("Test Failed");