1.透明度设置
1.1 窗体设置透明度
对于窗体透明度设置,就只需要调用一个函数就可以了,函数如下:
函数参数是浮点数,取值范围是0到1 0即为全透明
setWindowOpacity(0.5); //半透明
程序运行效果图如下(我在界面上放了一个按钮可能不明显):

// 窗口全透明 部件不透明
setWindowFlag(Qt::FramelessWindowHint); // Windows下需要配合这个
setAttribute(Qt::WA_TranslucentBackground);
1.2 部件设置透明度
部件透明度设置需要借助Qt中的一个类来使用,即QGraphicsOpacityEffect类
// 部件透明设置
QGraphicsOpacityEffect *opacity = new QGraphicsOpacityEffect;
opacity->setOpacity(0.2); //透明范围同窗口透明度
ui->pushButton->setGraphicsEffect(opacity);
实现效果图如下:

2.部件阴影设置
// 设置部件阴影效果
QGraphicsDropShadowEffect *shadow = new QGraphicsDropShadowEffect;
// 阴影颜色设置
shadow->setColor(QColor(100,100,100));
// 阴影模糊半径,值越大越模糊
shadow->setBlurRadius(20);
// 阴影偏移值,横纵坐标同时移动20
shadow->setOffset(20);
// 部件设置阴影
ui->pushButton->setGraphicsEffect(shadow);
效果图如下:

笔记较简洁,详细资料请参考 Qt助手
本文介绍了如何在Qt中设置窗体和部件的透明度以及添加阴影效果。通过setWindowOpacity函数可以调整窗体的透明度,使用QGraphicsOpacityEffect类可实现部件透明,而QGraphicsDropShadowEffect则用于创建部件阴影。示例代码展示了具体实现方法并附有运行效果截图。

892

被折叠的 条评论
为什么被折叠?



