遮罩效果:
在弹出窗口时,主窗口亮度变暗,弹出窗口高亮显示,此时无法使用主窗口。遮罩主要由三层窗口构成:主窗口,遮罩层,弹窗。
遮罩层透明度设置
//0.5代表透明度,根据需要自行调整
QString str("QWidget{background-color:rgba(0,0,0,0.5);}");
shadeWindow->setStyleSheet(str);
设置不同程度遮罩:
//遮罩主窗口全部部分
shadeWindow->setGeometry(0, 0, this->width() , this->height());
//遮罩主窗口从左上到右下的三分之二
shadeWindow->setGeometry(0, 0, this->width()*2/3, this->height()*2/3);
//未能产生遮罩效果
shadeWindow->setGeometry( this->width() * 2 / 3, this->height() * 2 / 3,0,0);
//右下角到左上角三分之一的遮罩效果
shadeWindow->setGeometry(this->width() / 3, this->height() / 3, this->width(), this->height());
隐藏窗口的标题栏:
遮罩效果生成后使用下面代码可以去除弹窗的标题栏,但注意要添加退出功能
this->setWindowFlags(Qt::FramelessWindowHint | Qt::WindowSystemMenuHint | Qt::WindowMinMaxButtonsHint);