Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 删除QWidget的部分_C++_Qt_Widget - Fatal编程技术网

C++ 删除QWidget的部分

C++ 删除QWidget的部分,c++,qt,widget,C++,Qt,Widget,我对Qt很陌生。我有一个Qmain窗口,在该窗口上会显示一个弹出对话框。现在我的要求是删除弹出对话框的某些部分,这意味着,主窗口的内容应该在弹出对话框的特定区域可见 Wt允许这样的事情吗。。? 欢迎提供任何指导您可以在所有小部件上安装不透明效果 QGraphicsOpacityEffect * effect = new QGraphicsOpacityEffect(widget); effect->setOpacity(0.5); widget->setGraphicsEffect(

我对Qt很陌生。我有一个Qmain窗口,在该窗口上会显示一个弹出对话框。现在我的要求是删除弹出对话框的某些部分,这意味着,主窗口的内容应该在弹出对话框的特定区域可见

Wt允许这样的事情吗。。?
欢迎提供任何指导

您可以在所有小部件上安装不透明效果

QGraphicsOpacityEffect * effect = new QGraphicsOpacityEffect(widget);
effect->setOpacity(0.5);
widget->setGraphicsEffect(effect);
但您也可以隐藏小部件,但保留小部件占用的空间:

QSizePolicy sp_retain = widget->sizePolicy();
sp_retain.setRetainSizeWhenHidden(true);
widget->setSizePolicy(sp_retain);
widget->hide();

目标平台是什么?任何解决方案都取决于所使用的窗口系统/合成器的支持。