qt:从 QListView 中删除项目

发布于 2024-11-08 20:49:20 字数 301 浏览 0 评论 0原文

如何从 QListView 中删除项目?对于QComboBox,它是removeItem< /a> 但我找不到 QListView 的等效函数。

使用pyqt4。

How do I remove an item from a QListView? For QComboBox it's removeItem but I can't find an equivalent function for QListView.

Using pyqt4.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

﹉夏雨初晴づ 2024-11-15 20:49:20

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

In QListWidget you can remove directly with takeAt(), but not in QListView (read Qt Model/View). You should use the widget unless you need your own model. If QListView is what you want then get model, and remove, i.e. qListView.model().removeRow(row)

べ映画 2024-11-15 20:49:20

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

You should use a model model = QStandardItemModel(). Then, this model should be assigned to QListView listView.setModel(model). So, you could directly work in the model model.removeRow(row) for removing, standardItem = model.item(row) for getting the value, model.insertRow(0, standardItem) for inserting into the first position. You can also see additional functions to work with models in QStandardItemModel Class

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文