Python 2.7 PySide:如何通过单击按钮来清理“QLineEdit”字段?
我正在尝试用PySide制作一个简单的应用程序。我有一个网格布局,其中一些单元格是Python 2.7 PySide:如何通过单击按钮来清理“QLineEdit”字段?,python-2.7,pyside,grid-layout,qlineedit,Python 2.7,Pyside,Grid Layout,Qlineedit,我正在尝试用PySide制作一个简单的应用程序。我有一个网格布局,其中一些单元格是QLineEditwidgets。我想通过单击按钮清除其中4个的文本字段。以下是我代码的一部分: editFields = [angle1Edit, angle2Edit, len1Edit, len2Edit] clearBtn.clicked.connect(self.clearAll(editFields)) def clearAll(self, fields): for field in fie
QLineEdit
widgets。我想通过单击按钮清除其中4个的文本字段。以下是我代码的一部分:
editFields = [angle1Edit, angle2Edit, len1Edit, len2Edit]
clearBtn.clicked.connect(self.clearAll(editFields))
def clearAll(self, fields):
for field in fields:
return field.clear
在editFields
中,我收集了我想要清理的4个小部件。但这只清除了第一个,而不是全部
我怎样才能做到这一点呢?是否还有其他可能采取此类行动?也许我可以使用其他小部件来完成此任务?谢谢。首先,我认为您需要as
字段。clear
将只提供clear函数。其次,QLineEdit.clear()
不会返回任何内容,因此只需:
for field in fields:
field.clear()
是需要的,而不是
for field in fields:
return field.clear()
最后是导致问题的参数,它可能会强制它获取editFields[false]
字段,也就是第一个editFields[0]
字段
总之,我要让editFields属于保存字段和按钮的内容,然后尝试一下,看看它是否提供了所需的结果:
self.editFields = [angle1Edit, angle2Edit, len1Edit, len2Edit]
clearBtn.clicked.connect(self.clearAll)
def clearAll(self, checked=False):
for field in self.editFields:
field.clear()
谢谢你的回复。它给我一个错误
对象没有属性“editFields”
。您还有其他想法吗?编辑字段中的字段:clearBtn.clicked.connect(field.clear)
。