【发布时间】:2017-11-19 21:56:35
【问题描述】:
我能够使用以下代码在 QListWidget 中添加自定义 QListWidgetItem -
for item in dl_list:
widget = QtWidgets.QWidget()
card = Ui_DownloadCard()
card.setupUi(widget)
card.set_filename(item["title"])
card.set_progress_bar(item["progress"])
card.set_progress_text(item["progress"]/item["size"])
card.set_speed(item["speed"])
listItem = QtWidgets.QListWidgetItem(self.download_list)
listItem.setSizeHint(widget.sizeHint())
self.myListWidget.addItem(listItem)
self.myListWidget.setItemWidget(listItem, widget)
现在我希望以新的速度和进度更新每个项目。我尝试了以下代码 -
self.myListWidget.item(0).set_speed("300 KB/s")
但它给出了错误提示
AttributeError: 'QListWidgetItem' object has no attribute 'set_speed'
那么更新项目的正确方法是什么?
【问题讨论】:
-
当您不向我们展示
download_list是什么时,我们怎么知道这一点?考虑How to create a Minimal, Complete, and Verifiable example。 -
如果您使用的项目是默认出现的项目,即QListWidgetItem,为什么您说您使用的是
custom QListWidgetItem?
标签: python pyqt qt5 pyqt5 qtwidgets