Eja*_*jaz 1 python qt4 pyqt4 python-2.7
我想单击一个按钮并清除20个QLineEdits。
我正在尝试使用findChildren()并将所有QLineEdit放在QListWidget中
self.StudentAdmissionLayout = QGridLayout()
self.StudentAdmissionLayout.addWidget(self.StudentName,1,0,1,1)
Run Code Online (Sandbox Code Playgroud)
self.StudentAdmissionLayout布局上放置了所有QLineEdit。
self.myList = QListWidget()
self.Item = QListWidgetItem()
self.Item = self.StudentAdmissionLayout.findChildren(QLineEdit)
self.myList.addItem(self.Item)
Run Code Online (Sandbox Code Playgroud)
我得到以下错误:
TypeError: arguments did not match any overloaded call:
QListWidget.addItem(QListWidgetItem): argument 1 has unexpected type 'list'
QListWidget.addItem(QString): argument 1 has unexpected type 'list'
Run Code Online (Sandbox Code Playgroud)
我试图将以上4行放在一个循环中。但是第三行不起作用,我不确定如何使它起作用。请提出建议。
好,我们必须了解的行为list-of-QObject QObject.findChildren (self, type type, QString name = QString())。我说这节课,它说;
返回具有给定名称的该对象的所有子代,可以转换为T类型,如果没有此类对象,则返回一个空列表。省略name参数会使所有对象名称匹配。搜索是递归执行的。
参考:http : //pyqt.sourceforge.net/Docs/PyQt4/qobject.html#findChildren
然后,返回python list给您,列表中的元素是T类型(输入您的输入)。所以你有问题;
Run Code Online (Sandbox Code Playgroud)TypeError: arguments did not match any overloaded call: QListWidget.addItem(QListWidgetItem): argument 1 has unexpected type 'list' QListWidget.addItem(QString): argument 1 has unexpected type 'list'
该错误是因为您列出了零件,但实际上它只能是QListWidgetItem或 QString(或python string)。如果要分开,则必须使用“ for循环”来迭代数据。
myQListWidget = QListWidget()
listsItem = ['my', 'data', 'is', 'here', '!']
for item in listsItem:
myQListWidget.addItem(item)
Run Code Online (Sandbox Code Playgroud)
我发现的另一个问题是,您搜索数据是QLineEdit,它不支持类型的重载方法QListWidget.addItem()。我认为您无法将其加入该方法。但是,如果QLineEdit仅需要“文本” 。你可以做到这一点;
self.studentAdmissionQGridLayout = QGridLayout()
.
.
.
self.myQListWidget = QListWidget()
listsMyQLineEdit = self.studentAdmissionQGridLayout.findChildren(QLineEdit)
for myQLineEdit in listsMyQLineEdit:
self.myQListWidget.addItem(myQLineEdit.text())
Run Code Online (Sandbox Code Playgroud)
这个参考要理解QListWidget.addItem()。
参考:http : //pyqt.sourceforge.net/Docs/PyQt4/qlistwidget.html#addItem
问候,
| 归档时间: |
|
| 查看次数: |
6400 次 |
| 最近记录: |