qtableview 添加并显示订购的物品,因为它们是任意到达的?

Posted

技术标签:

【中文标题】qtableview 添加并显示订购的物品,因为它们是任意到达的?【英文标题】:qtableview add and display ordered items as they arrive arbitrary? 【发布时间】:2018-08-14 16:23:55 【问题描述】:

我想根据它们的顺序显示一组订购的物品 1:N,因为它们是任意到达的,例如假设以下物品按以下顺序到达:

#1,#2,#10 那么Qtableview 应该以正确的顺序显示它们,没有空行来表示尚未到达的元素:

+------+ - #1 - - #2 - - #10 - +------+

如果 #5 到达,qtableview 将其视图更新为以下内容:

+------+ - #1 - - #2 - - #5 - - #10 - +------+

等等。

我怎样才能以最佳性能实现这种行为(无需在每次物品到达时重新排序和重新绘制整个数据)?

【问题讨论】:

你可能想看看QSortFilterProxyModel 【参考方案1】:

您应该从 QSortFilterProxyModel 继承并可能重新定义虚函数 lessThan http://doc.qt.io/qt-5/qsortfilterproxymodel.html#lessThan

【讨论】:

以上是关于qtableview 添加并显示订购的物品,因为它们是任意到达的?的主要内容,如果未能解决你的问题,请参考以下文章

想通过braintree付款发送订购物品的详细信息

Qt:QTableView如何添加一行?

在大量插入后向 QTableView 添加行会减慢应用程序的速度

用更多行动态更新 QTableView

找到大多数不可订购的物品

如何在 QTableView 中应用过滤器后显示特定行