【发布时间】:2021-06-30 10:41:37
【问题描述】:
我创建了一个框架并在该框架中添加了许多 pyqt5 项。
添加表单后,我想将框架的所有项目清除为默认的空白值。我可以通过 .clear() 方法设置单个项目来做到这一点。
有什么方法可以一次性清除框架或选项卡中的所有项目以清除(或默认)值?
【问题讨论】:
标签: python python-3.x pyqt pyqt5
我创建了一个框架并在该框架中添加了许多 pyqt5 项。
添加表单后,我想将框架的所有项目清除为默认的空白值。我可以通过 .clear() 方法设置单个项目来做到这一点。
有什么方法可以一次性清除框架或选项卡中的所有项目以清除(或默认)值?
【问题讨论】:
标签: python python-3.x pyqt pyqt5
没有清除所有输入的方法。一个简单的解决方案是使用 findChildren 方法迭代小部件:
for widget in parent_widget.findChildren([QLineEdit, QComboBox]):
if hasattr(widget, "clear") and callable(widget.clear):
widget.clear()
或
for widget in parent_widget.findChildren(QWidget):
if not isinstance(widget, QLabel) and hasattr(widget, "clear") and callable(widget.clear):
widget.clear()
【讨论】: