2013-08-01 373 views
10

通過下面的代碼隱藏行如何QFormLayout隱藏後除去殘留間隔的行

field.hide() 
formLayout.labelForField(field).hide() 

一個的上述缺點是,雖然該行中的項被隱藏的間距以上和行下面仍然存在,也就是說,隱藏行上方和下方的行比佈局中的其他項顯得更加分散。在QFormLayout中隱藏一行後如何去除剩餘的空格?

+0

參見http://qt-project.org/forums/viewthread/29788 –

回答

3

隱藏:

field->hide(); 
label->hide(); 
formLayout->removeWidget(field); 
formLayout->removeWidget(label); 

顯示:

formLayout->insertRow(row, label, field); 
label->show(); 
field->show();