btn_style = """
QPushButton {
border: none;
border-radius:0px;
background-color: none;
border-left:1px solid #1791FB;
border-bottom: 1px solid qlineargradient(spread:pad,x1:0,y1:0, x2:1,y1:0, stop:0 rgba(255, 255, 255, 1), stop:0.3 rgba(255, 255, 255, 1), stop:0.31 rgba(23, 145, 251, 1), stop:0.7 rgba(23, 145, 251, 1), stop:0.71 rgba(255, 255, 255, 1), stop:1 rgba(255, 255, 255, 1));
}
"""
其中:qlineargradient代表线性渐变,另外还有辐射渐变和弧度渐变等。
渐变过程:X1----X2从左向右渐变;
Y1---Y2从上向下渐变。
对应上面代码,就是从左到右有颜色变化,从上到下没有变化。
ps:这里stop后面跟的数字必须是0到1之间
上面的按钮样式执行后的效果如下:
ui.pushButton->setStyleSheet("QPushButton{background-color: qradialgradient"
"(spread: pad, cx: 0.8, cy: 0.2, radius: 0.81, focusRadius: 0.1, fx: 0.8, fy: 0.2,"
"stop: 0 rgba(255, 0, 0, 255), stop: 0.2 rgba(255, 0, 0, 255), "
"stop: 0.9 rgba(0, 225, 0, 255), stop: 1 rgba(0, 225, 0, 255));}"
"QPushButton:hover{background-color: green;}");
qradialgradient代表径向渐变