Как добавить тень к кастомному главному окну в PyQt?
Пытался сделать кастомное окно в кьюте на удаве. Скрыл дефолтное окно винды. Попробовал добавить тень на главный QWidget окна (centralwidget), который заранее сделал прозрачным.
self.setWindowFlags(Qt.FramelessWindowHint)
self.setAttribute(Qt.WA_TranslucentBackground)
self.shadow = QGraphicsDropShadowEffect(self)
self.shadow.setBlurRadius(10)
self.shadow.setXOffset(0)
self.shadow.setYOffset(0)
self.shadow.setColor(QColor(37, 37, 37))
self.ui.centralwidget.setGraphicsEffect(self.shadow)
При добавлении тени понял, что тень создается из куска самого виджета, забирая его периферийное пространство по его периметру. Добавил отступы со всех сторон для centralwidget. В результате тень появилась, так как располагающиеся в centralwidget объекты были смещены к центру из-за отступов. Но возникла другая проблема. При масштабировании окна в полноэкранный режим тень не исчезает, а остается по краям приложения, тем самым создавая отступы от краев экрана. Пример угла приложения (рядом с краем экрана)
На ум пришел вариант убирать отступы в centralwidget при масштабировании окна до максимального размера. Но такое решение мне не очень по душе, ибо костыльно.
Есть ли встроенные в кьют варианты с тенями, чтобы реализовать задуманное без костылей?
Всех благ. Есть ли какой-нибудь способ сделать тени у окна, чтобы это было
