Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
5.5.0
-
None
-
Windows 7 64-bit
Debian testing amd64
Description
Children widgets disappear when QGraphicsEffect is set to parent and children have already own graphics effect (except the first child). Under Qt 4.8.6 it works fine.
Example code:
#include "mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) { this->resize(120, 115); QFrame *frm = new QFrame(this); frm->setGeometry(this->geometry()); QPushButton *btn1 = new QPushButton("Btn1", frm); btn1->setGeometry(10, 10, 100, 25); QPushButton *btn2 = new QPushButton("Btn2", frm); btn2->setGeometry(10, 45, 100, 25); QPushButton *btn3 = new QPushButton("Btn3", frm); btn3->setGeometry(10, 80, 100, 25); { QGraphicsDropShadowEffect *effect = new QGraphicsDropShadowEffect(btn1); effect->setBlurRadius(30); effect->setColor(Qt::black); effect->setOffset(0,0); btn1->setGraphicsEffect(effect); } { QGraphicsDropShadowEffect *effect = new QGraphicsDropShadowEffect(btn3); effect->setBlurRadius(30); effect->setColor(Qt::black); effect->setOffset(0,0); btn3->setGraphicsEffect(effect); } { QGraphicsBlurEffect *effect = new QGraphicsBlurEffect(frm); effect->setBlurRadius(2); frm->setGraphicsEffect(effect); } } MainWindow::~MainWindow() { }
Screenshots in attachment.