QGraphicsBlurEffect仅在父窗口小部件上

时间:2013-10-11 02:10:54

标签: c++ qt qt4.8

我正在尝试在另一个上面显示一个小部件并仅在父级上应用QGraphicsBlurEffect

MyWidget::MyWidget(QWidget* parent) :
QWidget(parent),
{
    QGraphicsBlurEffect* effect = new QGraphicsBlurEffect(this);
    parent->setGraphicsEffect(effect);
}

但结果是两个小部件都模糊了。

接缝就像效果传播给了孩子们。

如何仅在父级上应用模糊效果?

1 个答案:

答案 0 :(得分:1)

您最好的选择是打破亲子关系。 QGraphicsItem没有像ItemIgnoresParentOpacity QGraphicsEffects这样的标记。

另一个解决方案是复制ItemIgnoresParentOpacity机制并为QGraphicsEffect实现它,但我不认为这是值得的。