QT用setStyleShee给背景加渐变色
时间: 2023-07-04 13:04:45 浏览: 303
可以使用CSS中的线性渐变(linear gradient)来给QT的背景添加渐变色。具体步骤如下:
1. 设置QT窗口的背景透明,这可以通过设置窗口的属性为Qt::WA_TranslucentBackground来实现。
2. 使用setStyleSheet函数设置窗口的CSS样式,具体代码如下:
```
setStyleSheet("background: qlineargradient(x1:0, y1:0, x2:1, y2:1,stop:0 #00bfff, stop:1 #1e90ff);");
```
其中,qlineargradient函数表示使用线性渐变,(x1,y1)表示渐变起点坐标,(x2,y2)表示渐变终点坐标,stop表示渐变的颜色位置,#00bfff和#1e90ff是两个不同的颜色值,可以根据需要自行修改。
完整的代码实现如下:
```
#include <QApplication>
#include <QWidget>
#include <QPushButton>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QWidget w;
w.setWindowFlags(Qt::FramelessWindowHint);
w.setAttribute(Qt::WA_TranslucentBackground, true);
w.setStyleSheet("background: qlineargradient(x1:0, y1:0, x2:1, y2:1,stop:0 #00bfff, stop:1 #1e90ff);");
QPushButton btn("Hello, World!", &w);
btn.setGeometry(50, 50, 200, 50);
w.show();
return a.exec();
}
```
这样就可以给QT的窗口背景添加渐变色了。
阅读全文