透明效果
1.设置整个窗体透明
调用setWindowOpacity( )方法,传入一个0~1之间的值来表示透明度;1表示不透明,0表示完全透明,在构造函数中添加
setWindowOpacity(0.5);//0~1之间
2.设置窗体透明,部件不透明
在构造函数中添加
//设置窗体透明 this->setAttribute(Qt::WA_TranslucentBackground, true); //设置无边框 this->setWindowFlags(Qt::Window | Qt::FramelessWindowHint);
3.组件设置透明
在构造函数中添加
QGraphicsOpacityEffect *opacityEffect=new QGraphicsOpacityEffect; opacityEffect->setOpacity(0.5); ui->pushButton->setGraphicsEffect(opacityEffect);
4.paintEvent( )方法设置透明
//重写paintEvent方法,是实现窗体半透明 void MainWindow::paintEvent(QPaintEvent *event) { QPainter painter(this); painter.fillRect(rect(),QColor(255,255,255,50)); }
阴影效果
1.通过QGraphicsDropShadowEffect类来设置
在构造函数中添加
QGraphicsDropShadowEffect *shadowEffect= new QGraphicsDropShadowEffect; shadowEffect->setColor(QColor(100,100,100));//设置阴影颜色 shadowEffect->setBlurRadius(20);//设置阴影模糊半径 shadowEffect->setOffset(20);//设置阴影偏移值 ui->pushButton->setGraphicsEffect(shadowEffect);
转 : https://blog.csdn.net/OO_SEN/article/details/114322154
https://blog.csdn.net/qq_54169998/article/details/128533843
标签:透明,shadowEffect,QT,阴影,窗体,设置,构造函数 From: https://www.cnblogs.com/fps2tao/p/17759499.html