Qt透明标签并不总是更新其背景

Qt transparent label doesn't always update its background

我有 3 个主要小部件的子小部件,旨在播放视频文件(它们的大小和位置相同,我的意思是它们相互重叠,同时显示其中一个,其他隐藏)

我也有一个透明背景的 Qlabel,我也创建它作为主要小部件的子项。我提出这个标签是为了始终显示超过 3 个视频播放器小部件。 Qlabel的代码部分如下:

labelCamName = new QLabel(this);
labelCamName->resize(300,50);
labelCamName->move(110,0);

labelCamName->setStyleSheet("background-color: rgba(0,0,0,0%);color: rgba(150, 30, 30, 90%)");

labelCamName->setText("blabla");
labelCamName->raise();
labelCamName->show();

当标签被覆盖的第一个视频播放器小部件更新自身(播放视频)时它工作正常但是当它改变播放视频的小部件并显示另一个要播放的小部件(尚未播放)时它显示一个静止的黑色框架,标签的背景显示第一个视频播放器小部件的最后一帧。它不会伪装成透明背景的标签,如下截图所示:

有什么建议让我遇到这个问题以及如何使标签始终透明吗?

提前致谢。非常感激。

将这些属性和标志添加到所需的 Qlabel 解决了我的问题。

labelCamName->setWindowFlags(Qt::Window | Qt::FramelessWindowHint);
labelCamName->setAttribute(Qt::WA_TranslucentBackground);