有三个QWidget,分别为ABC,A在最底层,B在中间层,显示视频,C在最上层,透明,可以在C上绘图或者放置一些控件。但是现在
raise();
setWindowFlags(Qt::WindowStaysOnTopHint);//置顶
setAttribute(Qt::WA_TranslucentBackground);
都试过,C还是会覆盖掉B中的视频,请问有什么办法让C透明
Qt 如何实现在视频播放窗体上面叠置一层半透明的窗体
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
豁然开朗v5 2023-12-25 11:42关注设置透明窗体:
1.先设置windowFlag,setWindowFlags(Qt::FramelessWindowHint | Qt::Tool | Qt::SubWindow);
2.然后再设置属性 setAttribute(Qt::WA_TranslucentBackground, true);
3.然后在透明窗口的paintEvent绘制半透明的背景评论 打赏 举报解决 2无用