pyqt5 遍历当前页面的控件并清空控件中的内容
时间: 2023-05-16 21:05:37 浏览: 215
可以使用以下代码遍历当前页面的控件并清空控件中的内容:
```python
import PyQt5.QtWidgets as QtWidgets
def clear_widgets(layout):
for i in reversed(range(layout.count())):
widget = layout.itemAt(i).widget()
if isinstance(widget, QtWidgets.QLineEdit):
widget.clear()
elif isinstance(widget, QtWidgets.QTextEdit):
widget.clear()
elif isinstance(widget, QtWidgets.QComboBox):
widget.setCurrentIndex(-1)
elif isinstance(widget, QtWidgets.QSpinBox):
widget.setValue(0)
elif isinstance(widget, QtWidgets.QDoubleSpinBox):
widget.setValue(0.0)
elif isinstance(widget, QtWidgets.QCheckBox):
widget.setChecked(False)
elif isinstance(widget, QtWidgets.QRadioButton):
widget.setChecked(False)
elif isinstance(widget, QtWidgets.QGroupBox):
clear_widgets(widget.layout())
elif isinstance(widget, QtWidgets.QTabWidget):
for j in range(widget.count()):
clear_widgets(widget.widget(j).layout())
elif isinstance(widget, QtWidgets.QStackedWidget):
for j in range(widget.count()):
clear_widgets(widget.widget(j).layout())
```
然后在需要清空控件的地方调用该函数即可:
```python
clear_widgets(self.layout())
```
其中,self.layout() 是当前页面的布局。
阅读全文