メソッドQSpacerItem
を使用してレイアウトに を追加しました。addStretch()
layout->addStretch(1);
削除したいのですが、参照がありませんでした。
QLayoutItem
すべてを参照して削除のみを行うにはどうすればよいQSpacerItem
ですか?
私は個人的にこれを書きます:
for (int i = 0; i < layout->count(); ++i) {
QLayoutItem *layoutItem = layout->itemAt(i);
if (layoutItem->spacerItem()) {
layout->removeItem(layoutItem);
// You could also use: layout->takeAt(i);
delete layoutItem;
--i;
}
}
したがって、コードで明確にされていない場合、ロジックは次のようになります。
レイアウトのすべてのアイテムを検索します。
スペーサー品かどうか確認してください。
ある場合は、それを削除します。