def clearLayout(layout: QLayout) -> None: if layout.count() == 0: return item: QLayoutItem = layout.takeAt(0) while item is not None: if item.widget() is not None: item.widget().deleteLater() elif item.layout() is not None: item.layout().deleteLater() item = layout.takeAt(0)
def clear_layout( layout: QtWidgets.QLayout ): """Clears all widgets within a layout """ while layout.count(): child = layout.takeAt(0) if child.widget() is not None: child.widget().deleteLater() elif child.layout() is not None: clear_layout(child.layout())