1

如何从 中删除项目QListView?因为QComboBox它是removeItem,但我找不到QListView.

使用 pyqt4。

4

3 回答 3

7

在 QListWidget 中,您可以使用 直接删除takeAt(),但不能在 QListView 中(阅读 Qt 模型/视图)。除非您需要自己的模型,否则您应该使用小部件。如果 QListView您想​​要的,那么获取模型并删除,即qListView.model().removeRow(row)

于 2011-05-21T18:23:43.247 回答
1

您应该使用模型,而不是视图。

https://doc.qt.io/qt-4.8/qabstractitemmodel.html#removeRow

于 2011-05-21T19:14:30.217 回答
1

你应该使用一个模型model = QStandardItemModel()。然后,应该将此模型分配给 QListView listView.setModel(model)。因此,您可以直接在模型中工作model.removeRow(row)以删除、standardItem = model.item(row)获取值、model.insertRow(0, standardItem)插入到第一个位置。您还可以在QStandardItemModel 类中查看使用模型的其他功能

于 2018-08-30T04:54:16.663 回答