PyQt5 ListWidget fügen Sie Elemente der Liste
beim lernen PyQt5 fand ich ein kleines problem( vielleicht ein bug) in der ListWidget Widget (und allen anderen widgets)
den ListWidget
haben eine addItem
Methode überladen :
( der code ist in c++, aber dies ist die gleiche Schnittstelle in pyqt )
void addItem(const QString &label)
void addItem(QListWidgetItem *item)
void addItems(const QStringList &labels)
also das problem ist, dass in PyQt5 es ist nicht mehr QStringList
geben, und ich sollte eine einfache Liste von strings anstatt der QStringList
aber wenn ich empfangen und Fehler mir zu sagen, dass keine Methode entsprechend der vorgegebenen Parameter :
Traceback (most recent call last):
File "main.py", line 21, in <module>
listWidget.addItem(ls)
TypeError: arguments did not match any overloaded call:
addItem(self, QListWidgetItem): argument 1 has unexpected type 'list'
addItem(self, str): argument 1 has unexpected type 'list'
Hier ist mein code :
from PyQt5 import QtGui, QtCore, QtWidgets
from PyQt5.QtWidgets import *
import sys
if __name__ == '__main__':
app = QApplication(sys.argv)
listWidget = QListWidget()
listWidget.show()
ls = ['test', 'test2', 'test3']
listWidget.addItem('test')
listWidget.addItem('test2')
listWidget.addItem('test3')
listWidget.addItem(ls)
sys.exit(app.exec_())
InformationsquelleAutor karim | 2017-03-08
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie möchten, fügen Sie eine Liste müssen Sie die Funktion
addItems()
.Ändern:
zu
InformationsquelleAutor eyllanesc