2016-02-06 83 views
0

我對Qt很新。我有QMainWindow,在其上會顯示一個彈出對話框。現在我的要求是刪除彈出對話框的一部分,這意味着主窗口的內容應該在該彈出對話框的特定區域中可見。刪除QWidget部分

是否允許這樣的事情..? 任何指導可以理解

+0

什麼是目標平臺嗎?任何解決方案都取決於所使用的窗口系統/合成器的支持。 –

回答

0

你可以安裝一個不透明的效果在你部件

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();