我的项目包含两个完全相同项的独立qlistwidget。我的代码成功地将项添加到第一个列表,但没有添加到第二个列表。一定有人以前这样做过,但搜索结果是用来删除重复项的。在
是否可以在两个QListWidgets中添加一个项而不每次都创建新项?我可以解决这个问题,但这似乎是一个学习的机会。在
for item in listItems:
itm = QtWidgets.QListWidgetItem(item);
self.lstOne.addItem(itm);
self.lstTwo.addItem(itm); #fills the first but not the second
以下是所有代码:
^{pr2}$
共享相同项的两个列表是使用共享模型的
QListView
对象的一个很好的用例。对于小列表,可以使用QStandardItemModel
,它包含QStandardItems
,如下所示:如果您有一个大列表,您应该考虑实现您自己的模型类(从
QAbstractListModel
派生)。这样做的好处是不需要预先为所有列表元素创建项类,因此可以提供更好的性能。在{a1}你可以阅读更多关于Qt模型的内容
相关问题 更多 >
编程相关推荐