前言
QWidget设置QSS无效,这个不知是不是Qt的bug,还是有啥高深意义,反正应用中就想自定义一个窗体
1、解决方案一(墙裂推荐)
不要继承或使用QWidget,改用其他的QFrame,QDialog等,亲测QFrame有效
2、解决方案二
重载paintEvent,加入以下代码
void MyWidget::paintEvent(QPaintEvent *event)
{
Q_UNUSED(event);
QStyleOption styleOpt;
styleOpt.init(this);
QPainter painter(this);
style()->drawPrimitive(QStyle::PE_Widget, &styleOpt, &painter, this);
}
参考:https://blog.youkuaiyun.com/qq_37354286/article/details/79845547