本文主要是介绍QT 设置窗口不透明度,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在窗口作为子窗口时,setWindowOpacity设置窗口的不透明度可能会失效。
QGraphicsOpacityEffect *opacityEffect = new QGraphicsOpacityEffect(this);
opacityEffect->setOpacity(1.0);
this->setGraphicsEffect(opacityEffect);// 创建属性动画对象,指定要改变的属性为透明度
QPropertyAnimation *animation = new QPropertyAnimation(opacityEffect, "opacity");// 设置动画的起始值和结束值
animation->setStartValue(1.0); // 完全不透明
animation->setEndValue(0.0); // 完全透明// 设置动画的持续时间,单位为毫秒
animation->setDuration(1000); // 1秒钟// 启动动画
animation->start();
如果不需要动画效果,可以将动画部分直接去掉,opacityEffect->setOpacity(1.0);这句代码直接控制窗口不透明度。
这篇关于QT 设置窗口不透明度的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!