QLinearGradient lg;
lg.setstart(x1,y1);
lg.setfinishstop(x2,y2);
lg.setcolorat(0,QColor("white"));
lg.setcolorat(0.4,QColor("gray"));
lg.setcolorat(1,QColor("green"));
qpainter p(this);
p.setbrush(lg);
p.drawRect(rect()));
把上面代码放到某个qwidget的painterEvent里
和那段stylesheet效果一样(以上代码没有区分大小写)。
具体意思参考QLinearGradient的帮助。