在我的项目中,我有一个被setMask(QRect())
掩盖的窗口。它工作正常,但窗口管理器留下的阴影消失了。我绝对希望对我的程序产生阴影效果。
首先,我将所有对象移动到一个小部件中,并将该小部件投射到MainWindow上。然后,我使用setAttribute(Qt::WA_TranslucentBackground, true)
和setWindowFlags(Qt::FramelessWindowHint)
使MainWindow透明化。这样做了,但是,有一个无框窗口引起了许多我似乎无法解决的问题。即,https://stackoverflow.com/questions/31418494/qtframelesswindowhint-window-cant-be-recorded-with-obs
如果我只是setAttribute(Qt::WA_TranslucentBackground, true)
或设置样式表,背景会变黑,不透明。
所以我的问题是,如何在不移除框架的情况下使MainWindow透明?或者在使用setMask时如何投射阴影?
感谢您的时间。